使用 Jenkins 部署多模块 maven 项目
Posted
技术标签:
【中文标题】使用 Jenkins 部署多模块 maven 项目【英文标题】:Deploying multi module maven project with Jenkins 【发布时间】: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 记录。 【参考方案1】:在做了一些研究之后,我同意 cmets 中的@lanW。它与 Jenkins 设置高度相关。我将与他们核对详细的实现。谢谢,我会关闭这个。
【讨论】:
以上是关于使用 Jenkins 部署多模块 maven 项目的主要内容,如果未能解决你的问题,请参考以下文章
Jenkins自动化部署springboot多模块依赖jar
Jenkins自动化部署springboot多模块依赖jar
Jenkins自动化部署springboot多模块依赖jar