как применить двойной доллар ($$) для строковой переменной в gradle - PullRequest
0 голосов
/ 19 февраля 2019

У меня есть набор, как показано ниже.

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 голосов
/ 20 февраля 2019

Вы можете получить то, что хотите, используя метод getProperty, например так:

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

println getProperty("${phpVersion}MajorVersion")

Я считаю, что это невозможно сделать, используя только фигурные скобки, другой ответ StackOverflow предлагает то же самое.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...