You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jenkins含多个输入文本时如何将值传递到Windows命令提示符构建阶段(Groovy脚本)

Jenkins动态输入框值传递到Windows CMD构建步骤解决方案

1. 调整Groovy渲染逻辑

在Active Choices Reactive Reference Parameter的Groovy脚本中,给每个动态生成的输入框设置符合Jenkins参数命名规范的唯一name属性,name值就是后续调用时的参数名,示例脚本如下:

// 替换为你自己的Active Choice多选项参数名
def selectValue = YOUR_MULTI_SELECT_PARAM
def outputHtml = ""

switch(selectValue) {
    case "对应触发选项1":
        // 输入框name设为INPUT1、INPUT2,后续直接用该名称调用参数值
        outputHtml += '<p>配置1:<input type="text" name="INPUT1" placeholder="请输入值1"></p>'
        outputHtml += '<p>配置2:<input type="text" name="INPUT2" placeholder="请输入值2"></p>'
        break
    case "对应触发选项2":
        outputHtml += '<p>配置3:<input type="text" name="INPUT3" placeholder="请输入值3"></p>'
        break
    // 自行补充其他分支逻辑
}
return outputHtml

2. 修改参数配置项

打开Active Choices Reactive Reference Parameter的配置页:

  • 选择参数类型为 Formatted HTML
  • 勾选 Return parameter value 选项,确保输入框的值会被Jenkins识别为全局构建参数

3. Windows CMD构建步骤调用

构建阶段的CMD脚本中直接使用%参数名%格式调用对应输入框的值即可,示例命令:

:: 输出INPUT1和INPUT2的输入值
echo %INPUT1% %INPUT2%
:: 带空格的参数值建议加引号避免截断
echo "%INPUT1%" "%INPUT2%"

注意事项

  • 所有动态生成的输入框name不能和Jenkins任务已有的其他参数重名,否则会出现参数值覆盖
  • 若多选项同时触发多组输入框,需保证所有输入框的name全局唯一
  • 可选参数可以加CMD判断逻辑避免输出无效值:if defined INPUT1 echo %INPUT1%

内容的提问来源于stack exchange,提问作者Vimantha Perera

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.15 14:36:04