次の2つのクラスがあるとします。
public class MyClass {
public String getDescription() {
return "MyClass";
}
}
と
public class MyClassLoader {
public static void main (String[] argv) throws ClassNotFoundException {
Class.forName("MyClass");
System.out.println("MyClass class was successfully loaded");
}
}
これらのクラスの両方がデフォルトのパッケージに含まれている場合、それは正常に実行され、クラスがロードされ、世界は美しいです。(クラスを削除するMyClass
とClassNotFoundException
、予想どおり、が表示されます。
ただし、両方がパッケージに含まれている場合(たとえば、Eclipseのパッケージである場合)、
package myClassTestPackage;
両方で宣言されているので、ClassNotFoundException
実行しようとするとが表示されます。
この問題の原因とその修正方法を教えてください。これは、はるかに大きなプログラムで発生しているエラーを再現することができた最も簡単な方法です。