Java 什么是JVM内部,它是如何工作的?

Java 什么是JVM内部,它是如何工作的?,java,debugging,nullpointerexception,classloader,Java,Debugging,Nullpointerexception,Classloader,在爪哇 class C{ public void d(){ ... E.f(); ... } } 堆栈跟踪将是 at a.b.C.d(C.java:300) at a.b.E.f(E.java:500) 但如果我看到这样的情况,我对“J9VMInternals”类有什么看法 at a.b.E.f(E.java:500) ... at java.lang.J9VMInternals.initializeImpl(Nat

在爪哇

class C{
   public void d(){
          ...
       E.f();
          ...
   }
}
堆栈跟踪将是

at a.b.C.d(C.java:300)
at a.b.E.f(E.java:500)
但如果我看到这样的情况,我对“J9VMInternals”类有什么看法

at a.b.E.f(E.java:500)
     ...
at java.lang.J9VMInternals.initializeImpl(Native Method)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
at a.b.c.d(c.java:300)
我试图调试的原始堆栈跟踪

java.lang.NullPointerException
    at java.lang.ClassLoader.initializeClassLoaderAssertStatus(ClassLoader.java:1215)
    at java.lang.ClassLoader.<init>(ClassLoader.java:167)
    at java.lang.ClassLoader.<init>(ClassLoader.java:126)
                   ....
    at java.lang.J9VMInternals.initializeImpl(Native Method)
    at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
    at <J2EE_listner_contextInitializedMethod>

我使用的是java 1.6.0_24 weblogic 11

您是否希望您的类能够凭空实例化?JVM加载并初始化它,您将看到这样的堆栈跟踪以及您的类

据我所知,classloader加载类,J9VMInternals做什么?我认为它是一个特定于IBMs的类,位于JVM代码中,管理其余的调用classloader等。但是您说WebLogic是IBMwebsphere,weblogic被甲骨文收购。我使用的是sun提供的jre,而不是weblogicjrocketI附带的jre。我认为您使用的是IBM。这似乎是J9VMInternals,似乎调用了本机方法,例如,对构造函数进行初始化。我不知道在哪一点调用它