我已经从另一台机器的现有jenkins服务器导入了jenkins作业。但问题是,它引用了旧机器上的JDK,而我想将其更改为使用我新的jenkins配置的JDK。但我找不到任何方法来做到这一点。所以,如果你遇到过这种情况并找到了解决办法,请也帮帮我。
谢谢。
在Jenkins Web UI的“作业名称”->“配置”中,有一个JDK下拉菜单。它将列出Jenkins配置中可用的所有JDK。
根据@ Derek下面的评论,在较新的版本中,您可以在“管理Jenkins” ->“全局工具配置” ->“JDK”中找到它。
请注意,您需要“Overall/Administer”权限来管理Jenkins。
对于您正在编辑的现有作业,如果您在“配置系统”Jenkins设置中添加了单个JDK配置,则可能无法使用JDK下拉选择。
但是,对于新工作,它是可用的。
令人惊讶的是,如果添加第二个JDK配置,则现有作业中也会出现。
在我看来,这似乎是一个错误(在Jenkins ver. 1.629中进行了测试)。
请参见此处提出的类似问题:JDK selection is hidden even when a JDK is configured
以下是你应该在工作中进行配置的位置:
JDK中有一个下拉框,其中包含在Jenkins中配置的不同JDK。
以下是你应该在Jenkins的配置中进行配置的位置:
使用最新的Jenkins版本2.7.4,但该版本对于现有作业存在一个错误。
通过Manage Jenkins -> Global Tool Configuration -> JDK 添加新的JDK。 ** 如果您编辑当前作业,则JDK下拉菜单不会显示(错误)
单击 http://your_jenkin_server:8080/restart 并重启服务器
重新配置作业
现在,在Jenkins Web界面中的“job name”-> 配置中,您应该可以看到JDK下拉菜单。它将列出Jenkins配置中可用的所有JDK。
你可以使用Pipeline在旧工作中设置新的JDK。只需编写以下内容:
tools {
jdk '新JDK版本号'
}
pipeline{
agent any
tools{
jdk 'deafault'
}
stages{
stage('build'){
..............
}
}
}
}
默认情况下,"default"只是在将JDK配置到Jenkins全局系统时给它的名称。
如果您有一个多配置(矩阵)工作,您将没有JDK下拉菜单,但需要将JDK配置为构建轴。
小心工作
1 - 如果你的工作基于Maven,Jenkins会采用你的默认Java配置,并且你可以在POM.XML中决定编译级别。
2 - 如果你有自由样式的工作,你可以在工作的配置选项中选择要使用的JDK。
希望这能帮到你。
我也遇到了同样的问题(运行Jenkins v2.303.1),在项目设置中看到新的JDK之前,我需要添加新的JDK。
进入“管理Jenkins(德语:Jenkins verwalten)”,然后进入“工具配置(德语:Konfiguration der Hilfsprogramme)”,应该有一个关于“JDK”的部分。在这里,您可以管理不同的Java版本(无论是下载还是使用本地版本):
设置完这些JDK后,我就能够选择要使用哪个JDK版本: