「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > マルチプロジェクト Gradle 構成でテストの依存関係を解決するにはどうすればよいですか?

マルチプロジェクト Gradle 構成でテストの依存関係を解決するにはどうすればよいですか?

2024 年 11 月 8 日に公開
ブラウズ:451

How to Resolve Test Dependencies in Multi-Project Gradle Configurations?

マルチプロジェクト Gradle 構成でのテストの依存関係の解決

Gradle でマルチプロジェクト ビルドを操作する場合、プロジェクト全体のテスト コード間に効果的な依存関係を確立することが不可欠です。プロジェクト A とプロジェクト B が存在し、プロジェクト B がプロジェクト A のコンポーネントに依存しているシナリオを考えてみましょう。

問題ステートメント

この状況では、プロジェクト B の build.gradle は次のようになります。 :

apply plugin: 'java'
dependencies {
  compile project(':ProjectA')
}

ただし、compileTestJava タスクはプロジェクト A からのテスト コードをコンパイルできません。これは、他のプロジェクトからテストの依存関係にアクセスするために必要な構成にギャップがあることを示しています。

解決策

この問題に対処するには、プロジェクト B の build.gradle を testCompile 依存関係で更新できます:

dependencies {
  ...
  testCompile project(':A').sourceSets.test.output
}

この新しい依存関係により、プロジェクト B のテスト コードがプロジェクト A からコンパイルされたテスト クラスに確実にアクセスできるようになります。sourceSets.test.output を使用することにより、Gradle はビルド中にテスト クラスが配置される出力ディレクトリを解決します。 &&&]

この構成は Gradle 1.7 で正常にテストされました。 Gradle バージョン 5.6 以降の場合は、別のソリューションが必要であり、別途文書化されていることに注意してください。

最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3