문제

나는 다음과 같은 스택 흔적을 얻고 있습니다.

java.lang.NoClassDefFoundError: sun/reflect/GeneratedMethodAccessor1
    at sun.reflect.GeneratedMethodAccessor1.<clinit>(Unknown Source)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
    at java.lang.Class.newInstance0(Class.java:355)
    at java.lang.Class.newInstance(Class.java:308)
    at sun.reflect.MethodAccessorGenerator$1.run(MethodAccessorGenerator.java:381)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.reflect.MethodAccessorGenerator.generate(MethodAccessorGenerator.java:377)
    at sun.reflect.MethodAccessorGenerator.generateMethod(MethodAccessorGenerator.java:59)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:28)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at edu.tufts.cs.testsim.LogicalProcess.dispatchMessage(LogicalProcess.java:214)
    at edu.tufts.cs.testsim.LogicalProcess.processForward(LogicalProcess.java:287)
    at edu.tufts.cs.testsim.LogicalProcess.doOperation(LogicalProcess.java:423)
    at edu.tufts.cs.testsim.LogicalProcess.run(LogicalProcess.java:434)
    at java.lang.Thread.run(Thread.java:637)
Caused by: java.lang.ClassNotFoundException: sun.reflect.GeneratedMethodAccessor1
    at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:316)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:288)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374)
    ... 19 more

생성 Methodaccessor1, 생성 메드 도세 서 2, 생성 메토 데코 닝 및 이들이 찾을 수없는 원인은 무엇입니까? 런타임에 바이트 코드 재 작성을하고 있지만 클래스가로드되기 전에만 반사를 통한 처음 몇 개의 호출은 잘 작동합니다. JIT 컴파일러가 내 코드를 보유한 후에 이것이 일어나고 있는지 궁금하지만, 이것을 디버깅하는 방법에 대한 좋은 아이디어조차 없습니다.

도움이 되었습니까?

해결책

GeneratedMethodAccessor### Call Methods 및 생성자를위한 반사 구현에 의해 런타임에 생성 된 클래스입니다. 이것은 인스턴스의 바이트 코드 브리지를 형성합니다 Method 또는 Constructor 실제 방법 또는 생성자에. 자세한 내용은 소스 코드에서 확인할 수 있습니다.

Desserialisation은 또한 가장 유도 된 비를 불러 일으키기 위해 동일한 메커니즘 중 일부를 공유하는 비슷한 일을합니다.Serializable 건설자.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top