如何在 Jenkins Job DSL 中生成增量 Maven 构建?
How can I generate incremental Maven build in Jenkins Job DSL?
我正在尝试生成出现在 Advanced...
下的 Jenkins Maven 作业中的内容
Incremental build - only build changed modules
这是一个直接位于 <maven2-moduleset>
中的 XML 节点。
我没有在 API 中找到它,所以我想我会使用 configure
,但我想不通。据我了解,这应该有效:
mavenJob('foo') {
rootPOM('foo/pom.xml')
goals('clean package')
configure { node ->
node {
incrementalBuild('true')
}
}
}
但是,我得到一个异常:
groovy.lang.MissingMethodException: No signature of method: groovy.util.Node.call() is applicable for argument types: (Generator$_run_closure1_closure14_closure16) values: [Generator$_run_closure1_closure14_closure16@1f7d8eff]
Possible solutions: wait(), name(), value(), any(), wait(long), any(groovy.lang.Closure)
我做错了什么?
在这种情况下,您必须在配置块中使用 /
运算符来创建或更新元素,请参阅作业 DSL wiki 中的 Transforming XML。
mavenJob('foo') {
rootPOM('foo/pom.xml')
goals('clean package')
configure { node ->
node / incrementalBuild(true)
}
}
我正在尝试生成出现在 Advanced...
下的 Jenkins Maven 作业中的内容
Incremental build - only build changed modules
这是一个直接位于 <maven2-moduleset>
中的 XML 节点。
我没有在 API 中找到它,所以我想我会使用 configure
,但我想不通。据我了解,这应该有效:
mavenJob('foo') {
rootPOM('foo/pom.xml')
goals('clean package')
configure { node ->
node {
incrementalBuild('true')
}
}
}
但是,我得到一个异常:
groovy.lang.MissingMethodException: No signature of method: groovy.util.Node.call() is applicable for argument types: (Generator$_run_closure1_closure14_closure16) values: [Generator$_run_closure1_closure14_closure16@1f7d8eff]
Possible solutions: wait(), name(), value(), any(), wait(long), any(groovy.lang.Closure)
我做错了什么?
在这种情况下,您必须在配置块中使用 /
运算符来创建或更新元素,请参阅作业 DSL wiki 中的 Transforming XML。
mavenJob('foo') {
rootPOM('foo/pom.xml')
goals('clean package')
configure { node ->
node / incrementalBuild(true)
}
}