我有一个带gradle的简单web项目,我希望在百万美元模板中获得gradle变量,如:
更新了Thymeleaf模板的一部分
<title>Simple project title v.: @myVar@-beta</title>
在build.gradle中我有这个变量(在评论后更新):
import org.apache.tools.ant.filters.ReplaceTokens
def myVar = "dev"
... minimized ...
war {
filter( ReplaceTokens, tokens: ['@myVar@': myVar])
}
其中dev
- 是我的构建服务器传递的自定义值
gradle war -P myVar=122
。
如果有可能,我怎么能得到它?
答案 0 :(得分:1)
你无法做到这一点。嗯...不是你想要的方式。 然后就是你的代码不应该依赖于构建工具。
你应该做什么是,让构建工具将变量注入你的代码。
我确信您的百万美元模板正在构建期间从其位置复制到其他位置,此时添加一个过滤条款。
change
<title>Some title ${#myVar}</title>
to
<title>Some title @myVar@</title>
然后
import org.apache.tools.ant.filters.ReplaceTokens // dont forget this import
war {
filter(ReplaceTokens, tokens: [myVar: myVar])
}