首页 > 编程语言 >docker部署的jenkins配置多jdk版本环境时,报错/var/jenkins_home/jdk-17.0.4/bin/java: No such file or directory

docker部署的jenkins配置多jdk版本环境时,报错/var/jenkins_home/jdk-17.0.4/bin/java: No such file or directory

时间:2022-10-18 18:01:36浏览次数:50  
标签:bin sgerrand jdk glibc libz 报错 jenkins

背景:jenkins默认jdk版本1.8,某个项目需要使用jdk17,但jenkins从官网在线安装的jdk最高版本只有jdk1.9,手动安装jdk17完成后,在jenkins容器内执行手动安装的jdk17时,报错/var/jenkins_home/jdk-17.0.4/bin/java: No such file or directory。

原因:因为jenkins容器的操作系统版本是Alpine Linux 3.16,因为alpine用的是musl libc,而不是glibc

解决办法:jenkins容器内安装glibc

wget -q -O /etc/apk/keys/sgerrand.rsa.pub https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub
wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.33-r0/glibc-2.33-r0.apk
apk add glibc-2.33-r0.apk
curl -Ls https://archive.archlinux.org/packages/z/zlib/zlib-1%3A1.2.9-1-x86_64.pkg.tar.xz -o libz.tar.xz && mkdir -p libz && tar -xf libz.tar.xz -C libz
mv libz/usr/lib/libz.so* /usr/glibc-compat/lib

在执行/var/jenkins_home/jdk-17.0.4/bin/java --version可以正常显示jdk版本信息

最后:jdk17安装完成后,在jenkins上全局工具配置jdk安装路径即可。

 

标签:bin,sgerrand,jdk,glibc,libz,报错,jenkins
From: https://www.cnblogs.com/chenlin2022/p/16803504.html

相关文章