如何为单个用户创建多个Maven m2存储库
我正在同一台服务器上设置2个jenkins实例。我想分别为两个jenkins创建两个本地maven存储库。詹金斯一号已经准备好了,我不想碰它 当两个jenkins都作为同一个用户运行时,我们可以为单个用户提供两个本地maven存储库吗 有没有什么方法可以把maven从jenkins指向新的存储库 谢谢如何为单个用户创建多个Maven m2存储库,maven,jenkins,Maven,Jenkins,我正在同一台服务器上设置2个jenkins实例。我想分别为两个jenkins创建两个本地maven存储库。詹金斯一号已经准备好了,我不想碰它 当两个jenkins都作为同一个用户运行时,我们可以为单个用户提供两个本地maven存储库吗 有没有什么方法可以把maven从jenkins指向新的存储库 谢谢 AI您可以在下的设置.xml中指定本地存储库 或者,也可以在命令行中指定它,如下所述: 您可以在下的设置.xml中指定本地存储库 或者,也可以在命令行中指定它,如下所述: Maven配置发生在3
AI您可以在
下的设置.xml
中指定本地存储库
或者,也可以在命令行中指定它,如下所述:
您可以在
下的设置.xml
中指定本地存储库
或者,也可以在命令行中指定它,如下所述:
Maven配置发生在3个级别:◾ 项目-大多数静态配置出现在pom.xml中
◾ 安装-这是为Maven安装添加的一次配置
◾ 用户-这是特定于特定用户的配置 Maven从
settings.xml
文件中读取设置,该文件可以位于${M2\u HOME}/conf/settings.xml
以及${user.HOME}/.M2/settings.xml
<settings>
...
<localRepository>/path/to/local/repo/</localRepository>
...
</settings>
...
/路径/到/本地/回购/
...
本地maven存储库的默认值为${user.home}/.m2/repository/
尽管您在两个Jenkins上使用相同的用法,但请记住,在节点上运行的作业可以由不同的用户启动(如果通过SSH),但读取的是该节点用户的${user.home}
,而不是运行Jenkins本身的用户(请参阅下面的节点注释)
为给定用户获取两种不同
的最简单方法是什么?
Jenkins具有Maven的全局工具配置(
${Jenkins_URL}/configureTools
):
在同一页面的下一页,您必须配置Maven安装
您可以选择全局工具配置| Maven配置以不使用默认的Maven设置(上面提到的两个),并从文件系统中指定一个:
一个实例选择${user.home}/.m2/settings.J1.xml
,,另一个实例选择
${user.home}/.m2/settings.J2.xml
<settings>
...
<localRepository>/path/to/local/repo/</localRepository>
...
</settings>
或者,您甚至可以选择两个不同的“Maven安装”,使用不同的Maven_HOME
,然后在每个安装中使用不同的${M2_HOME}/conf/settings.xml
(笨拙,但有时有用)
特定工作回购?
但是,如果磁盘空间不是真正的问题,您可以更进一步,为每个作业提供自己的私有本地存储库。当使用-SNAPSHOT在并行、并行分支和其他场景中构建共享库时,这尤其方便。在maven步骤中的高级…选项下,选择[X]使用私有maven存储库。该存储库最终驻留在${WORKSPACE}/.repository
中。建议添加以帮助管理您的共享空间
还可以根据每个作业指定特定的文件系统settings.xml
特定节点回购?
此外,每个节点都有自己的节点属性,可以再次自定义“工具位置”。您可以在此处覆盖“(Maven)Home”位置(但不能覆盖设置位置)
[
管道
如中所述,如果使用管道,也支持并可配置所有这些
额外插件
最后,如果您不喜欢将所有这些设置.xml
放在文件系统中的想法,您可以安装,它允许您在Jenkins中存储自定义设置.xml
。安装后,全局工具配置(如图所示)和作业步骤现在可以从您创建的“提供的设置.xml”选项:
Maven配置发生在3个级别:
◾ 项目-大多数静态配置出现在pom.xml中
◾ 安装-这是为Maven安装添加的一次配置
◾ 用户-这是特定于特定用户的配置
Maven从settings.xml
文件中读取设置,该文件可以位于${M2\u HOME}/conf/settings.xml
以及${user.HOME}/.M2/settings.xml
<settings>
...
<localRepository>/path/to/local/repo/</localRepository>
...
</settings>
...
/路径/到/本地/回购/
...
本地maven存储库的默认值为${user.home}/.m2/repository/
尽管您在两个Jenkins上使用相同的用法,但请记住,在节点上运行的作业可以由不同的用户启动(如果通过SSH),但读取的是该节点用户的${user.home}
,而不是运行Jenkins本身的用户(请参阅下面的节点注释)
为给定用户获取两种不同
的最简单方法是什么?
Jenkins具有Maven的全局工具配置(${Jenkins_URL}/configureTools
):
在同一页面的下一页,您必须配置Maven安装
您可以选择全局工具配置| Maven配置以不使用默认的Maven设置(上面提到的两个),并从文件系统中指定一个:
一个实例选择${user.home}/.m2/settings.J1.xml
,
,另一个实例选择${user.home}/.m2/settings.J2.xml
<settings>
...
<localRepository>/path/to/local/repo/</localRepository>
...
</settings>
或者,您甚至可以选择两个不同的“Maven安装”,使用不同的Maven_HOME
,然后在每个安装中使用不同的${M2_HOME}/conf/settings.xml
(笨拙,但有时有用)
特定工作回购?
但是,如果磁盘空间不是一个真正的问题,您可以更进一步,为每个作业提供自己的私有空间