如何在Jenkins中为每个从节点配置Maven安装?
症状
如果我使用所有默认值在Jenkins( New Item => Maven project
,使用maven插件)中创建一个Maven作业并运行所有默认值,则会出现此错误:
Started by user anonymousBuilding on master in workspace /var/lib/jenkins/jobs/job_name/workspace
ERROR: A Maven installation needs to be available for this project to be built.Either your server has no Maven installations defined, or the requested Maven version does not exist.
Finished: FAILURE
Maven在命令行中只需运行即可mvn
。
不可接受的解决方法
有用于Maven安装的系统范围内的Jenkins配置: Manage Jenkins => 配置系统 => Maven / Maven安装
。如果我使用此Web
UI添加Maven安装(通过在MAVEN_HOME
as中提供预安装的路径/usr/share/maven
),则该作业将运行成功。
问题:为什么它是全局Jenkins配置而不是特定于Slave的配置?
全局的Jenkins配置没有意义:Maven是按从属而不是Jenkins运行的。
Jenkins运行作业的Slaves动物园可能包含具有各种平台,操作系统和环境的Slave,其中不同版本的Maven安装在不同的位置。
问题:如何配置每个从节点的Maven安装?
在Slave节点上为整个系统设置相同的路径MAVEN_HOME
和M2_HOME
类似的环境变量无效。
版本号
Jenkins Master和Slave都是Linux主机。詹金斯版本:1.598
回答:
假设您在从属服务器上安装了Java和Maven:
- 转到管理Jenkins->管理节点
- 单击要配置的节点上的配置图标
- 向下滚动到“节点属性”,然后选中“工具位置”复选框
- 填写Java和Maven的选项。
现在它应该可以工作了(即使您已经在主服务器上配置了Maven安装)。
以上是 如何在Jenkins中为每个从节点配置Maven安装? 的全部内容, 来源链接: utcz.com/qa/429770.html