If a plan needs to use a specific JDK in a script task, how can I specify it? What works is generic one "java17=${bamboo.capability.system.jdk.JDK}". Say we'd like to use 1.7.025. So far tried:
java17=${bamboo.capability.system.jdk.JDK 1.7.0_25}
java17=${bamboo.capability.system.jdk.JDK\ 1.7.0_25}
java17=${"bamboo.capability.system.jdk.JDK 1.7.0_25"}
None worked :(
We recommend that you do not use capability labels with space characters, if you wish to use them as variables. A possible solution for space characters is to format them with '${}' symbols, however, this does not work in all cases.
JDKs apparently are autodiscovered and so labels are auto-created. I am hesitant to make changes to all of them (currently about 15 different JDKs in our bamboo). But I found this this works just fine:
java17="${bamboo.capability.system.jdk.JDK 1.7.0_25}"
Since this format is in line with your answer I am going to accept it.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I think it would be really nice if the JDK dropdown was available on script tasks. Since Gradle isn't supported out of the box, the only way to run a Gradle build it by using the script task, not having a JDK dropdown available just makes choosing your own JDK much more complex than it should be.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Are these variables something I can use inline in the build plan task? I tried to use java17="${bamboo.capability.system.jdk.JDK 1.7.0_25}" in the inline script, but it throws an invalid substitution error.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
See my answer in the same thread: "
${bamboo.capability.system.jdk.JDK
1.8
}
" works for me, as well as the environment variable "$bamboo_capability_system_jdk_JDK_1_8
"You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Oups, apparently I have to remove the "+" from
${bamboo.capability.system.jdk.JDK+1.8}
which yields
${bamboo.capability.system.jdk.JDK 1.8}
The corresponding environment variable also works (that is printed in the logs) for the sh scripts
$bamboo_capability_system_jdk_JDK_1_8
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I am hitting the same issue, JDK 1.8, the capability key looks like this:
system.jdk.JDK+1.8
and I do not know how to get rid from the "+"
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.