私はすべてのソースフォルダに独自の関連する出力フォルダがあるEclipseプロジェクトを持っています。/classesの代わりに/ eclipse-classesと呼ばれます。junitテストに使用するEclipseクラスパスを設定するにはどうすればよいですか?
私はフォルダ持っているのであれば: のsrc /メイン/ javaの(典型的なMavenのもの) 対象フォルダである:リソースのための ターゲット/日食-クラス
と同様など
をこれがそうです(つまり、eclipseはこれらのフォルダの中にある.classファイルを生成しますが)すべてのJunitテストを実行すると、「クラスが見つかりません」という例外がスローされます。私は組み込みのEclipseテストランナーを使用してJUnitを実行しています(つまり、クラスを右クリックし、 "run as"、 "Junit test")。
/eclipse-classesフォルダを/ classesにコピーすると成功します。これはeclipseが/ classesを使用していることを意味しますが、変更する設定オプションが見つかりません。何がeclipseが/ classesフォルダをまだ使っているのかを知る方法はありますか?
(おそらく関連、私もm2eclipseプラグインを使用しています)
リッチ売り手の答えに触発されたいくつかの追加情報: Mavenのは、リソースの変更に次のことを実行するように設定されています
process-resources resources:testResources
ながらこれは有用なことを何もしません(間違ったディレクトリにコピーします)。リソースは正しい場所に置かれるので、問題はありません。
.classpathエントリは大丈夫です。そこネスティングリッチが投稿何よりも少し深く行くので、Mavenのサブプロジェクトの束だが、そうでない場合は、この行を除いてまったく同じです:
<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
私たちは1つを必要としないかもしれないと思うが、それは気圧何かを傷つけていません。
edit2:さらにテストすると、eclipseが/ eclipse-classesフォルダと/ classesフォルダの両方でクラスファイルを生成していることがわかります。 m2eclipseはビルド時に自動的にバックグラウンドでmvn buildを実行しているようですが、これを無効にする方法は見つけられません。誰も他のアイディアを持っていなければ、私はm2eclipse開発者に連絡しようとします。
"サーバー"と "クライアント"のソースフォルダでは、 "サーバークラス"と "クライアントクラス"が出力フォルダとして使用されますか? –
JUnitはどのように起動しますか? JUnit Eclipseプラグインを使用していますか、またはMavenからユニットテストを開始しますか? – Dirk
質問文に回答を追加しました。 – wds