5

私は次の構造を持っています

lib/junit-4.10.jar
tests/Tester.java
tests/Tester.class
build/jar/jar_file.jar

(テスターはパッケージテストに属します)

を使用してテストをコンパイルできます

javac -cp build/jar/jar_file.jar:lib/junit-4.10.jar tests/*.java

ただし、テストを実行できないようです。

java -cp build/jar/jar_file.jar:lib/junit-4.10.jar org.junit.runner.JUnitCore tests.Tester

また

java -cp build/jar/jar_file.jar:lib/junit-4.10.jar org.junit.runner.JUnitCore Tester

そして、次の出力が得られます。

JUnit version 4.10
Could not find class: tests.Tester

Time: 0.001

OK (0 tests)

Could not find classこの問題を解決するにはどうすればよいですか?クラスパスに関連しているのではないかと思います。

4

2 に答える 2

9

これがLinux/Mac(Windowsではない)であり、パス区切り文字が正しい(:)と仮定すると、テストクラスファイルは現在の作業ディレクトリ(。)の下のパッケージサブディレクトリに存在するため、「。」を追加する必要があります。クラスパスへの例:

java -cp .:build/jar/jar_file.jar:lib/junit-4.10.jar org.junit.runner.JUnitCore tests.Tester
于 2012-10-30T19:53:06.013 に答える
1

クラスパスはセミコロンで区切る必要があります(Windowsの場合-何を使用しているかわからない)。

java -cp build/jar/jar_file.jar;lib/junit-4.10.jar org.junit.runner.JUnitCore tests.Tester

また、このコマンドラインを使用すると、プロジェクトルートで実行する必要があります

于 2012-10-30T19:51:40.927 に答える