Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 类未传递给ClassFileTransformer_Java_Instrumentation_Javaagents - Fatal编程技术网

Java 类未传递给ClassFileTransformer

Java 类未传递给ClassFileTransformer,java,instrumentation,javaagents,Java,Instrumentation,Javaagents,我一直在开发一个java代理来监控我们的web应用程序。我使用-javaagent参数向JVM添加代理。在测试过程中,我发现某些类没有传递给ClassFileTransformer,而它的内部类则传递给实现 public byte[] transform(ClassLoader loader, String className, Class<?> classBeingRedefined

我一直在开发一个java代理来监控我们的web应用程序。我使用-javaagent参数向JVM添加代理。在测试过程中,我发现某些类没有传递给ClassFileTransformer,而它的内部类则传递给实现

public byte[] transform(ClassLoader loader, 
                        String className, 
                        Class<?> classBeingRedefined, 
                        ProtectionDomain protectionDomain,
                        byte[] classfileBuffer) {

        logger.info("Loaded class: " + className);
        return null;
    }
调试日志打印是

加载类:x.y.z.A$Aa
加载类:x.y.z.A$Ab


我找不到任何原因,为什么x.y.z.A类没有打印。有人能帮我理解这个问题吗?

我无法分析那些不连贯的代码片段。我看到一个
transform
方法和一个潜在的目标类,但是代理实现和
transform
周围的类在哪里?我看不出变压器是如何初始化的,在哪里初始化的。显然你的问题在于你没有显示的代码。它甚至可能在您的
部分中。请学习什么是A,并以这种方式提问。你帮助别人,最终帮助自己,因为你得到的答案不仅仅是猜测。非常感谢。请告诉我们如何加载
A
。或者在您希望加载它的位置。使用verbose类加载(
-verbose:class
)运行VM以查看何时加载它。也许只有在你的变压器连接好之后?也许一点也不?我无法分析那些不连贯的代码片段。我看到一个
transform
方法和一个潜在的目标类,但是代理实现和
transform
周围的类在哪里?我看不出变压器是如何初始化的,在哪里初始化的。显然你的问题在于你没有显示的代码。它甚至可能在您的
部分中。请学习什么是A,并以这种方式提问。你帮助别人,最终帮助自己,因为你得到的答案不仅仅是猜测。非常感谢。请告诉我们如何加载
A
。或者在您希望加载它的位置。使用verbose类加载(
-verbose:class
)运行VM以查看何时加载它。也许只有在你的变压器连接好之后?也许一点也不?
package x.y.z;
abstract class A {
    static enum Aa {
        ...
    }

    static enum Ab {
        ...
    }
    ....
}