【发布时间】:2021-09-04 18:31:57
【问题描述】:
我有一个多模块 Maven 应用程序。项目结构是这样的
parent
|_ main
|_ pom.xml //<dependency> library_project, <packaging> jar
|_ library
|_ pom.xml
|_ pom.xml // with two <modules> and <packaging> pom
我有 nexus 存储库,并尝试使用 Jenkins 将其部署到 AWS。但我无法更改 Jenkins 设置,因为它是另一家公司提供的服务。 Jenkins 作业成功,但在最后一步,因为它正在上传 parent/target 文件夹中的 parent.pom 而不是 parent/main/target 文件夹中的 main.jar。最后,云服务报告部署错误,因为它需要一个 .jar 文件但得到一个 .pom 文件。
我对詹金斯不是很熟悉,但我猜詹金斯找到了父pom并决定最终的工件应该是<parent_artifact_id>.pom?我试图更改 POM 中的设置/插件,以便让 Jenkins 上传正确的 jar(即parent/target/main.jar),但它们都没有那么胖。任何建议都会有所帮助。谢谢。
【问题讨论】:
-
您想让 maven 进行部署(分两步,这样如果模块失败,您就不会得到部分部署,所以 mvn clean verify;mvn deploy)。您需要共享您的 Jenkins 配置(管道或 UI、maven 步骤、n xus 部署插件等)。更多信息,但都在此处由 aApache 和 Sonatype 记录。
标签: java maven jenkins pom.xml multi-module