我想從一個子目錄調用一個gradle任務,使用不同的builg.gradle文件。 我有以下任務:我可以在GradleBuild任務中同時使用dir和buildFile嗎?
task(subTask, type: GradleBuild) {
dir = new File(project.projectDir, "db/" + project.dbName)
buildFile = new File(project.projectDir, "build.gradle.subdir")
tasks = [params,...]
startParameter.projectProperties = [env: project.env]
}
我既可以通過「目錄」或「構建文件」,但是當我通過這兩個,那麼PROJECTDIR將是目錄,其中通過「構建文件」所在,而不是一個我作爲'dir'傳遞,我希望它們位於2個不同的目錄中,如上面的任務所示。任何想法如何做到這一點?
更新: 所以我有以下文件:
的build.gradle build.gradle.subdir DB/DBA/ DB/DBA/gradle.properties DB/DBB/ DB/DBB/gradle.properties
因爲一些歷史的東西目前我們做到以下幾點: CP build.gradle.subdir DB/DBA /的build.gradle CD分貝/分貝 ../gradlew任務...
我需要爲每個子目錄下db
所以我認爲我可能至少進一步做了1步(儘管仍然很難),並且不需要外部shell腳本來完成循環目錄和副本cd。
我差不多有: 我能夠手動複製build.gradle.subdir,然後上面的任務(不通過構建文件)的作品 OR 我可以通過構建文件,而不是目錄,在這種情況下,開始運行任務,但它不讀取執行該任務所需的db/dirA/gradle.properties。
你想用這個完成什麼?項目目錄始終是包含構建腳本的目錄。這不能改變。 –
@PeterNiederwieser我更新了更多細節的問題 – Gavriel