gpt4 book ai didi

git - 将多模块 Maven 项目放入 Jenkins

转载 作者:行者123 更新时间:2023-12-05 04:17:56 25 4
gpt4 key购买 nike

我需要设置一个多模块 Maven 项目以在 Jenkins(版本 1.534)中构建。每个模块都在自己的 Git 存储库中,彼此完全独立:

/home/git/ProjectDomain.git
/home/git/ProjectWAR.git

在本地我已经构建了自己的父 POM.XML 并将每个项目都放在一个子文件夹中:

<modules>
<module>ProjectSupport</module>
<module>ProjectWAR</module>
</modules>

这在本地有效,但我无法在 Jenkins 上使用它,而且我似乎找不到任何在线文档来说明如何执行此操作。有人对此有很好的引用吗?

编辑:我尝试使用的当前父 pom 位于/ProjectWAR 文件夹中,看起来像这样:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.company.project</groupId>
<artifactId>Project</artifactId>
<packaging>pom</packaging>
<name>Project</name>
<version>1.0</version>

<modules>
<module>../ProjectDomain</module>
<module>../ProjectWAR</module>
</modules>
</project>

它再次在本地运行,但在 Jenkins 上不起作用。我目前收到的错误是:

[FATAL] Non-readable POM /var/lib/jenkins/jobs/Project - Integration/workspace/../ProjectDomain/pom.xml: /var/lib/jenkins/jobs/Project - Integration/workspace/../ProjectDomain/pom.xml (No such file or directory) @ 
at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:364)
at hudson.maven.MavenEmbedder.buildProjects(MavenEmbedder.java:361)
at hudson.maven.MavenEmbedder.readProjects(MavenEmbedder.java:331)

所以不知何故,我需要告诉它 ProjectDomain 存储库在哪里,但我不知道该怎么做。

最佳答案

这样一个多模块项目的结构应该是这样的:

  pom.xml (parent)
+--- module-1 (pom.xml)
+--- module-2 (pom.xml)

父级将是 git 存储库的根目录。这使您在使用此类项目(Eclipse 或任何 IDE)以及 Jenkins 时的生活变得简单。

关于git - 将多模块 Maven 项目放入 Jenkins,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19572565/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com