Maven-テストを実行せずにコンパイルする方法は?


128

Mavenで、テストを実行せずにテストをコンパイルする方法はありますか?IDEを使用して、すべてではなく特定のテストを実行したい。


8
おそらく質問を編集するか、受け入れられた回答を変更する必要があります。
チランジブ2017年

回答:


29

パラメータを使用してみることができます -DskipTests

参照:


ネットビーンズでは、それが私がやっていたことです。私は次のmvn -Dmaven.test.skip = true -Dnetbeans.execution = trueクリーンインストールを表示し、次を表示します
user373201

[compiler:testCompile]テストソースをコンパイルしない[surefire:test]テストはスキップされます。少なくともnetbeansを使用すると、テストがスキップされてもテストソースがコンパイルされないようです
user373201

1
気にしないでください、ログがそれを言っているにもかかわらず、それはまだテストファイルをコンパイルしているようです。
user373201

34
これにより、テストが完全にスキップされます。実行とコンパイル。以下の正解を参照してください:test-compile。私はEclipseでmvn clean compile test-compileを使用します
Yashima

3
@Yashimaそうですね、この回答はそれほど賢くないです...以下の回答を受け入れてください。これで削除できます
lweller

334

どの程度test-compileのライフサイクル・フェーズ?testフェーズの前に発生するため、テストのスキップは必要ありません。つまり、

$ mvn test-compile

そして完了。

ビルドライフサイクルの概要でさらに説明します。


7
これはまさに私が必要としたものでした、ありがとう。私は元の質問者について知りません。しかし、テストをコンパイルしてから、別のテストランナーで実行することを検討していました。
Mike Miller

30

実行せずにテストとコードをコンパイルするには、次のようにします。

mvn test-compile

7
テストコンパイルにはコンパイルが含まれていると思います
Whimusical

@Whimusicalに同意します。さらに、これはコンパイル目標を2回実行します。
Gabriel Petrovay

26

テストフェーズ(パッケージなど)を含む目標を実行する場合、次の2つのことを行うことができます。

  • コマンドを使用しmvn -DskipTests=true packageます。これにより、すべてのテストがコンパイルされますが、実行されません。
  • またはmvn -Dmaven.test.skip=true package。これはテストブランチをコンパイルまたは実行しません。

3

または、maven.test.skip.execオプションを使用できます。

mvn -Dmaven.test.skip.exec=true

Mavenはテストを実行せずにコンパイルします。私はすべてのプロジェクトでこのオプションを定期的に使用しています。



0

settings.xmlファイルを使用することもできます

<maven.test.skip>true</maven.test.skip>

5
あなたはそれをしてはいけません。必要な場合は、コマンドラインで設定しますが、永続的に設定することはできません。
Sean Patrick Floyd

13
すべきか、すべきでないと言ったことはありません。オプションの知識を提供するだけです。
メナポール2011年

4
これにより、mavenもテストをコンパイルしなくなります。
Mike Miller

3
@ショーン・パトリック・フロイド:どうして?これは永続的ではなく、pom.xmlで設定することになります。
バラージュネメス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.