Running the following:
sourceCode.append("package org.mdkt;\n");
sourceCode.append("public class HelloClass {\n");
sourceCode.append(" public static class Nested {}\n");
sourceCode.append("}");
System.out.println(sourceCode.toString());
Class<?> helloClass = InMemoryJavaCompiler.compile("org.mdkt.HelloClass",
sourceCode.toString());`
Results in:
java.lang.NoClassDefFoundError: org/mdkt/HelloClass (wrong name: org/mdkt/HelloClass$Nested)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
at java.lang.ClassLoader.defineClass(ClassLoader.java:642)
at org.mdkt.compiler.DynamicClassLoader.findClass(DynamicClassLoader.java:28)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at org.mdkt.compiler.InMemoryJavaCompiler.compile(InMemoryJavaCompiler.java:22)
at uk.co.ensoft.xrm2m.codegenerator.SchemaClassGeneratorTest.testGenerateClass1(SchemaClassGeneratorTest.java:79)
Running the following:
Results in: