当前位置: 首页 > 知识库问答 >
问题:

Maven 构建在 Jenkins 中中止

赫连秦迟
2023-03-14

我是新来的詹金斯!我设法在Jenkins中克隆了GIT hub repo,现在试图在Jenkins中构建提取的maven项目。我从GITHUB获取了7个项目,它们相互依赖,也就是说,一些项目在其POM中为其他项目定义了依赖关系。

以下是我的maven配置(对不起,不能在这里张贴图片,见粗体)

根POM myFirstProject/POM.xml

目标和选项清洁包安装

MAVEN_OPTS

备用设置文件I

增量生成-仅生成已更改的模块

禁用自动项目存档

检查并行构建模块

使用工作区本地的私有Maven存储库策略

为每个失败的模块发送电子邮件

已选中解决 Pom 解析期间的依赖关系

无头跑

Pom解析过程中的进程插件

使用html" target="_blank">自定义工作区

Maven验证级别默认值

Maven设置配置-选择-

Maven全局设置配置-选择-

   I get following trace when I build this job:

我使用的是 Maven 3.3

正如你可以在列出的配置中看到的,我给出了一个项目的POM.xml的引用。按照我的理解,jenkins应该解析这个xml并首先构建所有的依赖项目。我不确定我的理解是否正确...如果它是不正确的-我期待知道如何前进。我应该按照构建依赖关系的顺序为不同的项目创建不同的作业吗?不知何去何从...谢谢

共有2个答案

许远航
2023-03-14

如果你有 7 个相互依赖的项目,你应该在 jenkins 中有 7 个不同的作业来构建它们,并将它们安装在 jenkins 本地 maven 存储库中。通过选中“在 Pom 解析期间解析依赖关系”选项(就像您已经做的那样),Jenkins 将自动解析项目的构建顺序。

这样做可能会很无聊,尤其是如果您计划添加更多依赖项(但这仍然可能是正确的方法)。

另一种选择是(假设您可以控制7个项目存储库/结构/...)创建一个父maven pom,将它们全部构建在一个中。在这种情况下,您可能会将所有项目移动到一个公共文件夹下(在 jenkins 中只有一个 Git 导入),但是如果您更喜欢(或有一些原因)不这样做,您还可以在 jenkins 配置中定义多个存储库。

高自怡
2023-03-14

JENKINS删除容量通道已启动尚未为Maven 3实现构建单个Maven模块!完成:中止Jenkins中支持Maven 3存在错误

我将我在jenkins的maven安装从3.2降到了2.2,效果很好!这是已经打开的JIRA票,从这里得到了提示:https://issues.jenkins-ci.org/browse/JENKINS-11964

 类似资料:
  • 詹金斯的新成员。 目前,我们使用maven和Subversion作为SCM进行手动构建: > 在本地工作副本文件夹中,POM文件有1.1.1-SNAPSHOT,issue mvn release:clean release:prepare-p all modules 这将创建一个标记https://avn/path/to/tag/xxx-1.1.1,而我的本地工作副本仍在1.1.2-SNAPSHO

  • ----maven-enforcer-plugin:1.0.1:enforce(default)@cli---添加ignore:org.eclipse.jetty.spdy.* ----maven-enforcer-plugin:1.0.1:enforce(enforce-bang-dependencies)@cli-- ---build-helper-maven-plugin:1.7:times

  • 我的项目结构如下: 是内的依赖项。 > 我应该在Jenkins中创建单独的作业来单独构建每个模块吗? 我为创建了一个作业,但出现以下错误(已将目标和操作设置为“清洁安装”: [INFO]扫描项目...[INFO] [INFO] ------------------------------------------------------------------------ [INFO]构建mypro

  • 我们使用Git、Jenkins和Artifactory作为CI/CD管道。我们有一个很大的代码库,每次完整的构建都需要大量的时间来处理。例如,我们有一个包含100+模块的聚合pom项目。父级文件如下所示: 因为更改可能不会发生在每个模块上,所以我们希望通过只构建自上次成功构建以来受影响的模块来加快构建过程。这可以通过Maven来完成。 示例: 如果开发人员知道哪些模块被更改了,这是很容易的。如果没

  • 问题内容: 我正在尝试使用Jenkins构建多模块Maven项目。 当我使用 与* Jenkins 相同的环境 (variables / settings.xml / user)在 命令行 上构建相同的项目时,测试失败会导致构建立即失败: * 在 詹金斯 建造时的位置: 生成状态表明所有模块和父级都是 成功的 ,实际上,这些应该是失败的。 我如何像詹姆斯在命令行中那样让詹金斯在maven构建中强制

  • 从服务器的“.bashrc”文件包含安装在主服务器中的maven路径。 我引用了类似的帖子reg这个问题,我有一个问题,在slave中运行jenkins作业使用maven(maven home不存在) 我的问题是我是否需要在所有服务器(包括slave)中使用maven,或者我在Jenkins中缺少一些配置reg、master和slave设置。