T14*_*145 5 java replace token gradle
我有一个用于 Gradle 设置的普通构建脚本,我想做的一件事是指定我的构建版本。这是我设置的用于替换主 Java 源文件中的版本标记的代码:
import org.apache.tools.ant.filters.ReplaceTokens
processResources {
from (sourceSets.main.java) {
include 'T145/myproj/Main.java'
filter(ReplaceTokens, tokens: ['@VERSION@' : project.version])
}
}
Run Code Online (Sandbox Code Playgroud)
但是它不起作用。我尝试使用该replace功能,但也没有证明是成功的。我Main.java有一个VERSION等于的公共变量,@VERSION@这就是我想要替换的。
根据我在ReplaceTokens 的 Gradle 手册示例中看到的内容,您希望删除过滤器行中的 @,以便它显示:
filter(ReplaceTokens, tokens: [VERSION : project.version])
Run Code Online (Sandbox Code Playgroud)
Gradle 假设它正在查找的标记已经用 @ 来分隔它,因此它会尝试替换 @@VERSION@@ 而不是 @VERSION@,就像您想要的那样。