2012-02-01 16 views
1

同じフォルダにtest.jarパッケージとTest.javaファイルがあります(CLASSPATHにはありません)。java.lang.NoClassDefFoundErrorに問題がある

.javaファイルでは、.jarパッケージに含まれるいくつかのクラスをインポートします。
そのフォルダに移動し、java -classpath test.jar Test.javaを使用してコンパイルします。すべてがよさそうだ。それは.jarファイル内のクラスを見つけることができないと言って

Exception in thread "main" java.lang.NoClassDefFoundError:...... 

:その後、私はjava Testを使用し、それは私にエラーを与えます。

ファイルをEclipseに移動してjarファイルを追加すると動作します。

+0

は、あなたが試してみました: 'Test' test.jarのjava -classpathを? –

答えて

1

ちょうどあなたがjavac -classpath test.jar Test.javaを使用してコードをコンパイルしたとして、あなたが実行するためにjavaコマンドを使用する必要があります(クラスパスにjarファイルを追加します) java -classpath test.jar Test.java

+0

それは私にエラーが表示されます: –

+0

あなたは少し問題を説明する必要があります..例外/エラートレースは何ですか?以前と同じエラーですか?スレッドで –

+0

例外 "メイン" java.lang.NoClassDefFoundErrorが:テスト/ JAV に起因:れるjava.lang.ClassNotFoundException:java.net.URLClassLoader $ 1.run(URLClassLoader.java:202)でTeest.java でjava.security.AccessController.doPrivileged(ネイティブメソッド) java.net.URLClassLoader.findClass(URLClassLoader.java:190) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher $ AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:248) Test.javaというメインクラスが見つかりませんでした。プログラムは終了します。 –

1

コンパイラと同じクラスパスでjavaコマンドを実行する必要があります。