Jenkins 2.55で新しいJenkinsサーバを設定すると、booleanParam
パラメータはもはや動作しません。私は宣言的なパイプラインを使用しており、booleanParam
は先週(更新する前に)うまくいきました。ジョブが実行されるとJenkins booleanParamがもう機能しない
pipeline
{
agent any
environment
{
LANG = "en_US.UTF-8"
LANGUAGE = "en_US.UTF-8"
LC_ALL = "en_US.UTF-8"
LC_CTYPE = "en_US.UTF-8"
}
options
{
buildDiscarder(logRotator(numToKeepStr: '5'))
timeout(time: 1, unit: 'HOURS')
}
parameters
{
booleanParam(name: 'DO_CHECKOUT', defaultValue: true, description: 'If checked, source code repositories are checked-out before building.')
}
stages
{
etc ...
}
}
、次のエラーを取得:
java.lang.ClassCastException: java.lang.Boolean cannot be cast to java.lang.String
at hudson.EnvVars.put(EnvVars.java:74)
at java.util.AbstractMap.putAll(AbstractMap.java:281)
at java.util.TreeMap.putAll(TreeMap.java:327)
at hudson.EnvVars.<init>(EnvVars.java:93)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
...
誰もが何が起こっているのか知っていますか?
を参照してください。これは 'echo DO_CHECKOUT.class'で確認できます。だから 'if(DO_CHECKOUT ==" true "){...}'をチェックするか、適切なブール値に最初にキャストしてください。これが回帰か意図的かどうかはわかりません。 – Rik
@Rik上記のパラメータ定義だけでJava例外が既に発生しています。 – BadmintonCat