在Gradle 處理多專案建置時,必須在跨專案的測試程式碼之間建立有效的依賴關係。考慮專案 A 和專案 B 存在的場景,專案 B 依賴專案 A 的元件。
在這種情況下,專案B 的build.gradle 可能如下所示:
<code class="groovy">apply plugin: 'java' dependencies { compile project(':ProjectA') }</code>
但是,compileTestJava 任務無法編譯專案A 中的測試程式碼。這表明從其他項目存取測試依賴項所需的配置存在差距。
為了解決這個問題,項目B 的build.gradle 可以使用testCompile 依賴項進行更新:
<code class="groovy">dependencies { ... testCompile project(':A').sourceSets.test.output }</code>
這個新的依賴項確保項目B的測試程式碼可以存取專案A 中編譯的測試類別透過使用sourceSets.test.output,Gradle 解析建置期間放置測試類別的輸出目錄。
此配置已在 Gradle 1.7 中成功測試。請注意,對於 Gradle 5.6 及更高版本,需要不同的解決方案並單獨記錄。
以上是如何解決多項目 Gradle 配置中的測試依賴?的詳細內容。更多資訊請關注PHP中文網其他相關文章!