【发布时间】:2021-05-13 09:45:59
【问题描述】:
短格式:有没有办法在使用 Artifactory jenkins 插件部署 Maven 项目时,告诉它为每个模块部署其各自的 ./target/pom.xml 而不是模块的原始 pom.xml?
我有一个 Maven 构建,其中包含一个父模块和一些构建 JAR 的子模块。各个 POM 都经过大量参数化,因此我可以从 Jenkins 传入 project.version 并将其传递到子模块中,但是当拉取 JAR 以用作依赖项时,参数化的 POM 文件不起作用,因为 Maven 不能由于参数化而解析父级(<parent><version>${revision}</version></parent> 严重失败)。我可以使用每个模块中的资源插件在 ./target 中创建过滤后的 POM 版本,所有参数均已解析,并在我可以使用的每个子 POM 中的 maven-install-plugin 中创建
<executions>
<execution>
<phase>install</phase>
<goals>
<goal>install-file</goal>
</goals>
<configuration>
<file>./target/${project.artifactId}-${revision}.jar</file>
<pomFile>./target/pom.xml</pomFile>
</configuration>
</execution>
</executions>
它将我想要的内容安装到本地仓库。但是,我没有看到一种方法来为 Jenkins 插件中的部署目标定义类似的东西。有吗?
【问题讨论】:
标签: jenkins-plugins artifactory