jenkins 自动安装 和 手动安装java 或者一些其他环境配置的区别,以及slave如何指定java版本
由于之前的jenkins存在安全漏洞,升级了jenkins,相应的jenkins master服务器上的java jdk也一起升级为open jdk21.
升级后发现:
1. 新的jenkins的slave node启动的jar包下载后,在原来的slave node服务器上面无法正常被执行了。这时我才知道原来升级了jenkins,对应的slave node启动的jar包也需要一个高版本的java jdk才能执行。所以,我就不得不 升级所有的jenkins slave node服务器上的jdk1.8->open jdk21.
2.现在我有一个java项目,是java8写的,原来可以正常部署的,升级jenkins后,发现job无法正常部署了(项目使用的jdk和服务器上的jdk不兼容)。
所以我需要在jenkins上安装一个java jdk8.那么安装的方式有两种,分别是自动安装和手动安装,下面是我亲手实操后,总结的这两种方式的安装步骤和区别。
1.手动安装java jdk
进入到jenkins->系统管理-> 全局工具配置:打开java安装模块
点击jdk安装,新增一个弹框,默认看到的是自动安装。
如果你不想用自动安装,想用你自己手动在master服务器上安装的jdk路径,可以取消“自动安装”的勾选,然后就会看到如下所示:
自己命名好java jdk的别名,配置好master服务器上jdk的绝对路径在JAVA_HOME输入框,然后点击点击页面下方的“保存”按钮就行了。
注意事项:
如果你使用的是手动安装java jdk的方式:
1.那么添加jdk选框种的 JAVA_HOME输入框里 配置的路径是:jenkins master服务器上面的jdk的绝对路径。
2.如果jenkins的slave node想使用jenkins上手动安装的jdk版本,在job configure中勾选这个jdk版本是不能直接使用的,build job时日志打印会提示:找不到java jdk路径。
原因是:jenkins上手动安装的jdk无法被slave node的job直接使用,需要在slave node服务器上手动安装一个同版本的java jdk,并且在slave node配置中指定这台节点服务器中的java jdk绝对路径。具体配置如下:
1)登录salave node 服务器-》在服务器某个目录下 下载需要版本的java jdk-》解压java jdk包
2)找到slave node服务上解压的java jdk的绝对路径,配置到jenkins slave中。具体操作如下:
进入jenkins->节点列表-》点击你想配置的slave node节点-》configure ,划到页面最下方:
选择你在jenkins上刚才配置的 手动配置的java jdk别名,然后输入jenkins salve node服务器上解压的java jdk绝对路径。点击保存即可。
此时,你再去jenkins job的confugure中 选择你配置的java jdk(同如上你手动配置的java jdk别名)-》再保存job->build job。 此时就能保证,你构建的job的项目使用的是 你在slave node服务器上 手动安装的java jdk版本,你的项目就可以使用这个jdk版本正常运行了。
如果你有多个slave node,那么其他的所有slave node都需要按照上面的流程操作一次: 手动在slave node服务器安装jdk版本,再去jenkins slave congfigure中配置jdk的绝对路径。
2.自动安装java jdk
进入到jenkins->系统管理-> 全局工具配置:打开java安装模块
点击jdk安装,新增一个弹框,默认看到的是自动安装。
你可以选择任意你想自动安装的java jdk版本:
安装方式也有多种多样,任你选择:
一般,我是勾选了java jdk版本以后,默认没有修改“新增安装”里面的配置。直接点击“保存”就行了。
注意事项:
如果你使用的是 自动安装java jdk的方式:
1.如果jenkins的slave node想使用jenkins上 自动安装的jdk版本,在job configure中勾选这个jdk版本 就可以直接使用的,build job就可以了。不需要去配置slave node,也不需要在slave node服务器中去安装这个版本的java jdk。
所以对比你发现了吧。如果jenkins想使用多个版本的jdk,最好就是使用自动安装jdk的方式去管理更加的方便。
如果你想使用java8以上的版本,我们都知道java8+以上就开始收费了,如果是用于商业用途,就需要购买商业license了,如果购买饿了license,在自动安装这里,登录输入你的账号密码,应该就可以下载安装高版本的java jdk了。
如果没有购买商业licese,那么就 可以使用默认的jdk9- 以下的版本了。如果想使用高版本的java open jdk,那么我目前的方式是 建议使用Extra *.zip/*.tar.gz的方式自动下载:
配置如下:
name : 输入jdk别名
label:根据自己需要,可以不填
Download URL for binary archive: 输入jdk的tar.gz的压缩包的路径
Subdirectory of extracted archive:输入一个名字(Optional subdirectory of the downloaded and unpacked archive to use as the tool's home directory.)