''之间的区别是什么? vs""在Gradle的build.gradle中?

时间:2017-09-15 10:28:55

标签: gradle groovy build.gradle

比较:

compile 'org.apache.commons:commons-lang3:3.6'
compile "org.apache.commons:commons-lang3:3.6"

我过去常常使用 build.gradle 中的'',因为它比""("")更简单。

但是我发现额外的变量不能使用'',例如,

Gradle无法解决:

compile 'org.apache.commons:commons-lang3:$versions.commonsLang'

compile "org.apache.commons:commons-lang3:$versions.commonsLang"是  工作

2 个答案:

答案 0 :(得分:4)

'(单引号)用于标准java String,而"(双引号)如果GString表达式将被评估为$或简单String它没有。

由于gradle脚本(在这种特殊情况下)是用groovy编写的,所以还要查看docs

答案 1 :(得分:2)

正如您所注意到的,"允许variable interpolation / expansion inside the string,而'不允许'。如果不需要变量插值,则使用for被认为是有益的。出于性能原因,编译器不需要为变量名称解析字符串。