Jenkins Windows批处理无法获取Choice Parameter值问题
问题分析与解决方案
你遇到的问题核心是Windows批处理脚本不识别Jenkins的${变量名}语法——这个写法是Jenkins Pipeline(Groovy)或Unix/Linux Shell脚本的变量引用方式,而Windows cmd环境下需要用%变量名%来读取环境变量。
修正后的Windows批处理代码
setlocal ENABLEDELAYEDEXPANSION echo The source value is %Source%
额外补充说明
- 如果你的脚本需要在循环、条件判断这类场景中动态读取变量值,才需要依赖延迟扩展(
ENABLEDELAYEDEXPANSION),此时可以用!Source!来引用变量:setlocal ENABLEDELAYEDEXPANSION echo The source value is !Source! - 对于自由风格Jenkins任务,配置Choice Parameter后,Jenkins会自动将参数值注入到Windows环境变量中,直接用
%参数名%就能正确获取到你选择的参数值。
修改后,当你选择ENV1时,脚本就会输出预期内容:The source value is ENV1。
内容的提问来源于stack exchange,提问作者Vamshi
相关产品推荐
相关产品推荐

