如何在gradle中将双美元($$)应用于字符串变量

时间:2019-02-19 19:20:29

标签: gradle build.gradle

我有一个类似下面的设置。

php55MajorVersion=5.5
php55MinorVersion=5
php55Dir="${top_build_dir}/php/php-${php55MajorVersion}.${php55MinorVersion}-${ansdkBuild}"

php56MajorVersion=5.6
php56MinorVersion=6
php56Dir="${top_build_dir}/php/php-${php56MajorVersion}.${php56MinorVersion}-${ansdkBuild}"

php70MajorVersion=7.0
php70MinorVersion=4
php70Dir="${top_build_dir}/php/php-${php70MajorVersion}.${php70MinorVersion}-${ansdkBuild}"

然后我有以下输入内容

phpVersion="php70"
phpMajorVersion="${phpVersion}MajorVersion"
phpMinorVersion="${phpVersion}MinorVersion"
phpDir="${phpVersion}Dir"

现在,我要打印与phpMajorVersion相关的值,该值应为7.0(操作方法-> phpMajorVersion-> $ {phpVersion} MajorVersion-> php70-> MajorVersion-> 7.0)。

我曾尝试使用$(“ $ {phpVersion} MajorVersion”),但仍能获取php70MajorVersion,但不是7.0。 有任何指针吗?

1 个答案:

答案 0 :(得分:0)

您可以使用getProperty方法获得所需的内容,如下所示:

ext {
    php55MajorVersion=5.5
    php56MajorVersion=5.6
    php70MajorVersion=7.0
    phpVersion="php70"
}

println getProperty("${phpVersion}MajorVersion")

我相信仅靠大括号是不可能实现的,另一个StackOverflow answer也建议这样做。