java.lang.NoClassDefFoundError
2 つの jar ファイルに依存する Java プログラムがあります。コマンドを使用してプログラムをコンパイルします。
javac -classpath jar1.jar:jar2.jar myprog.javaそして、それは正常にコンパイルされます。
しかし、コマンド : を使用してプログラムを実行しようとするとjava -cp jar1.jar:jar2.jar myprog、java.lang.NoClassDefFoundError. 助けてください、どこが間違っていますか?
私はubuntu 10.04を使用しています。
実際のエラー:
Exception in thread "main" java.lang.NoClassDefFoundError: userapps/SelectionTask_classes/SelectionTask
Caused by: java.lang.ClassNotFoundException: userapps.SelectionTask_classes.SelectionTask
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: userapps/SelectionTask_classes/SelectionTask. Program will exit.
ここで、SelectionTask は、コンパイルが成功した後に生成されたクラス ファイルです。