I have tested with and without package and both cases working fine.
Below are the classes
Default Package:
public class MyDynamicClass {
}
Under package com.test
package com.test;
public class MyDynamicClass {
}
package com.test;
public class MyDynamicClassTest {
public static void main(String[] args) {
try {
Class clazz = Class.forName("com.test.MyDynamicClass");
Class clazz2 = Class.forName("MyDynamicClass");
System.out.println("clazz :: "+ clazz);
System.out.println("clazz :: "+ clazz2);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
}
Output:
clazz :: class com.test.MyDynamicClass
clazz :: class MyDynamicClass
You can call newInstance() to create object once you have class object.
How are you compiling your class? Can you make sure there is .class file exist?