【发布时间】:2015-02-27 02:31:43
【问题描述】:
好的
我有一份 Jenkins 工作(Jenkins 版本更新)。
在我的 Jenkins 工作中,我有几个参数(字符串类型)。
例如:param1=value1 ... 到 paramN=valueN
现在,在 Jenkins 工作中,在 BUILD 部分下,我正在调用“Invoke Gradle”。
在这个 Gradle 部分中,我正在调用一个任务。例如:干净的构建
我需要的是:我想以 -PparamN=ValueN 的方式将上述 Jenkins 作业的参数传递给 Gradle?
但是当我在 Gradle Build 部分的“Switches”选项中传递 -Pparam1=${param1} -Pparam2=${param2} ...等等时,我看到了 Jenkins 日志正在显示:
它使用参数成功调用了Gradle exectuable。
...somepath.../bin/gradle -Dparam1=value1 -Dparam2=value2 ... -DparamN=valueN -Pparam1=value1 -Pparam2=value2 ... -PparamN=valueN
这说明,Jenkins 很友好地将参数(我在工作中定义的)以“-D”方式免费传递给 Gradle。
我的?s:
- 好吧,我不想将上面的参数作为-Dxxx=yyy传递
- 我只想传递参数-Pxxx=yyy方式
- 这可以通过使用“Invoke Gradle”插件实现吗?
【问题讨论】:
-
那么 Jenkins Gradle 插件只是为您添加任何构建参数作为系统属性。通过将它们添加到“开关”配置中,您也将它们添加为项目属性。我没有看到它们被声明两次的危害,而且我看不到禁用该特定插件行为的方法。
-
同意,但是一种是定义 Java 属性 (-D) 方式,而我在“开关”框中手动指定的其他方式 (-P) 方式是 Gradle 的系统属性。
标签: plugins parameters jenkins gradle parameter-passing