Scala的文字标识符在Need clarification on Scala literal identifiers (backticks)中描述。
背景:我正在将Ant构建系统转换为Gradle。我们目前有一个文件dependencies.properties
,其定义如下:
com.netflix.archaius.archaius-core.rev=latest.release
但Groovy不喜欢属性名称中的.
和-
(因为它们是运算符)。有没有办法告诉Groovy将.
和-
视为属性名称中的另一个字符,而不是更改属性的名称和使用它们的所有内容?
答案 0 :(得分:1)
以下不提供文字标识符,如在Scala中,但它应该解决您的根问题。鉴于这个dependencies.properties文件:
foo=bar
com.netflix.archaius.archaius-core.rev=latest.release
然后这个Gradle脚本:
ant.property(file: "dependencies.properties")
task go() {
println ant."com.netflix.archaius.archaius-core.rev"
println ant.foo
println "done."
}
输出(为简洁起见编辑):
bash-3.2$ gradle go
latest.release
bar
done.
BUILD SUCCESSFUL
Total time: 4.26 secs