[英]Gradle: replace tokens with project properties
我有一些資源文件,其中包含一些需要使用java插件任務'processResources'替換文件路徑的標記。 gradle是否提供了一種方式,令牌值是表達式?
1)src / resources / config.properties文件有一個令牌:SRC_ROOT_DIR = @ SRC_ROOT_DIR @
2)build.gradle文件包含以下內容:
processResources{
filter ReplaceTokens, tokens:[SRC_ROOT_DIR: project.projectDir]
}
這引發了一個異常說:無法將文件'..src \\ resources \\ config.properties'復制到'..build \\ resources \\ main \\ config.properties'
使用--stacktrace運行你的代碼段給了我:
...
Caused by: org.gradle.api.GradleException: Could not copy file
'C:\bss\zz\src\main\resources\config.properties'
to 'C:\bss\zz\build\resources\main\config.properties'.
...
Caused by: java.lang.ClassCastException:
java.io.File cannot be cast to java.lang.String
...
將project.projectDir更改為project.projectDir.name (或path)解決了它:
filter ReplaceTokens, tokens:[SRC_ROOT_DIR: project.projectDir.path]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.