web-dev-qa-db-ja.com

-DskipTestsと-Dmaven.test.skip = trueの違いは何ですか

Hive-0.13をビルドしようとしていました。

-Dmaven.test.skip=trueを使用する場合、テストjarはビルドされませんが、テストの依存関係はチェックされます。

-DskipTestsを使用する場合、テストjarはビルドされず、テストの依存関係もチェックされません。

-DskipTests-Dmaven.test.skip=trueの違いは何ですか?

38
Stanley Shi

Mavenドキュメント

-DskipTestsはテストをコンパイルしますが、実行をスキップします

-Dmaven.test.skip=trueはテストのコンパイルをスキップしはテストを実行しません

また、これは重要かもしれません

maven.test.skipは、Surefire、Failsafe、およびCompiler Pluginによって称賛されています

71
Kamil Kłys

ここで説明する3番目の関連オプションがあります: https://stackoverflow.com/a/21933970/3169948

「maven.test.skip.exec = true」テストはコンパイルされますが、実行されません。

したがって、Mavenのテストオプションの完全なセットは次のようになります。

  • -DskipTests ==>テストをコンパイルしますが、テストの実行をスキップします
  • -Dmaven.test.skip.exec = true ==>テストはコンパイルされますが、実行されません。
  • -Dmaven.test.skip = true ==>は、テストをコンパイルまたは実行しません。
3
CorbaTheGeek