在Gradle 中處理多項目建置時,必須在跨專案的測試程式碼之間建立有效的依賴關係。考慮專案 A 和專案 B 存在的場景,專案 B 依賴專案 A 的元件。
在這種情況下,項目 B 的 build.gradle 可能如下所示:
apply plugin: 'java'
dependencies {
compile project(':ProjectA')
}
但是,compileTestJava 任務無法編譯專案 A 中的測試程式碼。這表明從其他項目存取測試依賴項所需的配置存在差距。
為了解決這個問題,可以使用 testCompile 依賴項更新專案 B 的 build.gradle:
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