嗨,我有2個項目文件,如下圖所示:搖籃多的項目建設與文件讀取
project1
\- build.gradle
project2
\- build.gradle
\- build.properties
PROJECT1:的build.gradle
apply from: '/home/project2/build.gradle
test/test2/build.gradle'
task test1 {
println "Running task test 1"
}
test1.dependsOn test2
項目2:的build.gradle
task test2 {
println "Running task test 2"
Properties props = new Properties()
props.load(new FileInputStream("build.properties"))
}
當我執行te從PROJECT1 ST1任務,我得到以下錯誤:
運行任務測試2
FAILURE: Build failed with an exception.
Where: Script '/home/project2/build.gradle' line: 4
What went wrong: A problem occurred evaluating script. build.properties (No such file or directory)
Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 5.779 secs
由於gradle這個正在與相對路徑,它會嘗試搜索在PROJECT1目錄中的build.properties文件實際上是出現在project2目錄中。 我也可以將該文件移動到project1目錄中,但這是我不想做的事情。
我也可以在build.gradle中使用絕對路徑,但唯一的解決方案是?
我想運行project2:test2
任務project1:test1
任務沒有太多修改project2:build.gradle因爲我指的是在這個文件中的多個文件。
您是否偶然使用這些build.properties來配置您的構建?如果是這樣,你可以考慮使用gradle.properties來代替 - https://docs.gradle.org/current/userguide/build_environment.html –
謝謝Eric, 但是我們需要build.properties而不是gradle.properties文件(Requirement) 。 –