| - Run while adding new referenced class. |
| -- Running sayHi before redefinition |
| Hello from TestClass sayHi function |
| Goodbye from TestClass! |
| -- Adding NewClass to classloader! |
| -- Redefine the TestClass |
| -- call TestClass again, now with NewClass refs |
| Hello again from TestClass sayHi function |
| Hello from NewClass sayHi function |
| Nearby stack: |
| private static native art.StackTrace$StackFrameData[] art.StackTrace.nativeGetStackTrace(java.lang.Thread)(line: -1) |
| public static art.StackTrace$StackFrameData[] art.StackTrace.GetStackTrace(java.lang.Thread)(line: 61) |
| static void foobar.NewClass.sayHi() throws java.lang.Exception(line: 27) |
| public static void foobar.TestClass.sayHi()(line: 5) |
| - Run without adding new referenced class. |
| -- Running sayHi before redefinition |
| Hello from TestClass sayHi function |
| Goodbye from TestClass! |
| -- Redefine the TestClass |
| -- call TestClass again, now with NewClass refs |
| Hello again from TestClass sayHi function |
| -- Exception caught when running test without new class added! java.lang.NoClassDefFoundError |
| --- java.lang.NoClassDefFoundError At foobar.TestClass.sayHi(TestClass.java:5) |