2016-05-02 8 views
-1

外部パッケージであるACMパッケージをjdk \ jre \ lib \ extに配置します。これにより、ファイルをコンパイルするときにクラスパスを指定する必要がないため、javac Test.javaはファイルを正しくコンパイルします。しかし、java Testを使ってコンパイルしたファイルを実行したいときは、「メインクラスのテストを見つけたり読み込めなかった」というエラーが表示されます。なにが問題ですか?次のように外部パッケージのクラスパスオプションは、Javaファイルのコンパイルと実行で異なります。

Test.javaの内容は次のとおりです。

import acm.program.*; 

public class Test extends ConsoleProgram{ 
    public void run(){ 
     println(1); 
    } 
} 
+2

あなたはTest.javaでパッケージを持っていますか? –

+0

クラスファイルは生成されましたか? – Hiru

+0

あなたはそのディレクトリに何も置いてはいけません。 CLASSPATHを適切に設定する方法を学びます。 – duffymo

答えて

0

あなたはあなたのプログラムをコンパイルし、実行中acm.jar含める必要があります。

例:

javac -cp acm.jar Test.java 

// on windows 
java -cp .;acm.jar Test 

// on linux 
java -cp .:acm.jar Test 
+0

ファイルは-cpコマンドなしで正しくコンパイルされますが、コンパイルされたファイルは実行されません – Gropai

+0

クラスパスにjarを付けて実行しましたか? – Mahendra

関連する問題