基于tomcat运行jenkins常见的报错处理

目录

[1.jenkins.util.SystemPropertiesListener错误](#1.jenkins.util.SystemPropertiesListener错误)

升级jdk11可能遇到的坑

[2.java.lang.RuntimeException: Fontconfig head is null, check your fonts or fonts configuration](#2.java.lang.RuntimeException: Fontconfig head is null, check your fonts or fonts configuration)

[3.There were errors checking the update sites: UnknownHostException:updates.jenkins.io](#3.There were errors checking the update sites: UnknownHostException:updates.jenkins.io)

1.jenkins.util.SystemProperties$Listener错误

root@master tomcat-8.5.98# tail -10f logs/localhost.2024-02-06.log

rg.apache.catalina.core.StandardContext.listenerStart 配置应用程序监听器jenkins.util.SystemProperties$Listener错误

java.lang.UnsupportedClassVersionError: jenkins/util/SystemPropertiesListener has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0 (无法载入的类 \[jenkins.util.SystemPropertiesListener])
错误消息指出jenkins.util.SystemProperties$Listener类是由更高版本的Java Runtime编译的(类文件版本55.0),而当前运行环境的Java Runtime只识别到版本52.0的类文件。

类文件版本55.0对应于Java 11,而版本52.0对应于Java 8。这意味着Jenkins WAR文件是为Java 11或更高版本编译的,而你的Tomcat服务器是在Java 8或更低版本的环境下运行的。
PS:当前系统为centos7,tomcat版本为8.5.98,jenkins的版本为2.426.3LTS,java8

可能单看tomcat服务的catalina.out日志看不出具体的问题,需要结合localhost日志排查
解决办法:升级java环境至11版本,即升级jdk11

jdk11下载地址(根据系统选择安装包):Java Downloads | Oracle

升级jdk11可能遇到的坑

启动tomcat时直接报错:

The JRE_HOME environment variable is not defined correctly
JRE_HOME=/home/jdk11/jre
This environment variable is needed to run this program

这个错误消息表明系统中 JRE_HOME 环境变量没有被正确地定义。JRE_HOME 是一个环境变量,它指向 Java Runtime Environment (JRE) 的安装目录。当尝试运行某些 Java 程序或工具时,它们可能需要这个环境变量来找到正确的 JRE 安装位置。
PS:默认的jdk11目录下没有jre文件

root@master \~# cd /usr/local/jdk11/

root@master jdk11# ll -h

总用量 24K

drwxr-xr-x 2 root root 4.0K 2月 6 11:04 bin

drwxr-xr-x 4 root root 112 2月 6 11:04 conf

drwxr-xr-x 3 root root 132 2月 6 11:04 include

drwxr-xr-x 2 root root 4.0K 2月 6 11:04 jmods

drwxr-xr-x 72 root root 4.0K 2月 6 11:04 legal

drwxr-xr-x 6 root root 4.0K 2月 6 11:04 lib

drwxr-xr-x 3 root root 18 2月 6 11:04 man

-r--r--r-- 1 10668 10668 160 12月 20 06:09 README.html

-rw-r--r-- 1 10668 10668 1.3K 12月 20 06:09 release

解决:进入jdk11目录下,执行如下命令:

./bin/jlink --module-path jmods --add-modules java.desktop --output jre

root@master jdk11# ll -h
total 24K
drwxr-xr-x 2 root root 4.0K Feb 6 14:23 bin
drwxr-xr-x 4 root root 112 Feb 6 14:23 conf
drwxr-xr-x 3 root root 132 Feb 6 14:23 include
drwxr-xr-x 2 root root 4.0K Feb 6 14:23 jmods
drwxr-xr-x 8 root root 94 Feb 6 15:08 jre
drwxr-xr-x 72 root root 4.0K Feb 6 14:23 legal
drwxr-xr-x 6 root root 4.0K Feb 6 14:23 lib
drwxr-xr-x 3 root root 18 Feb 6 14:23 man
-r--r--r-- 1 10668 10668 160 Dec 20 06:09 README.html
-rw-r--r-- 1 10668 10668 1.3K Dec 20 06:09 release

之后可在/etc/profile文件添加环境变量(根据实际情况添加):

export JAVA_HOME=/path/jdk11

export JRE_HOME=/path/jdk11/jre # 替换为实际的JRE路径

export PATH=JRE_HOME/bin:PATH

2.java.lang.RuntimeException: Fontconfig head is null, check your fonts or fonts configuration

解决办法:

1.可以连接互联网的情况下

yum install -y fontconfig,再重新启动tomcat

2.无法连接互联网

找一台可以连接互联网的机器,仅下载fontconfig的rpm包及其依赖包

yumdownloader --resolve --destdir=/root/java/ fontconfig dejavu-sans-fonts fontpackages-filesystem libexpat.so.1 libfreetype.so.6 libuuid.so.1

下载好后,打包成tar包,上传到jenkins服务器上并解压安装(可能环境不同,所需的依赖包也不一致,根据提示安装即可),再重新启动tomcat后,可正常访问登入Jenkins

root@maste java# rz
root@maste java# rpm -ivh --force ./*.rpm

Preparing... ################################# 100%

Updating / installing...

1:fontpackages-filesystem-1.44-8.el################################# 10%

2:dejavu-fonts-common-2.33-6.el7 ################################# 20%

3:dejavu-sans-fonts-2.33-6.el7 ################################# 30%

4:libuuid-2.23.2-65.el7_9.1 ################################# 40%

5:libpng-2:1.5.13-8.el7 ################################# 50%

6:expat-2.1.0-15.el7_9 ################################# 60%

7:bzip2-libs-1.0.6-13.el7 ################################# 70%

8:freetype-2.8-14.el7_9.1 ################################# 80%

9:fontconfig-2.13.0-4.3.el7 ################################# 90%

10:fontconfig-2.13.0-4.3.el7 ################################# 100%

3.There were errors checking the update sites: UnknownHostException:updates.jenkins.io

出现 "There were errors checking the update sites: UnknownHostException: updates.jenkins.io" 错误通常意味着 Jenkins 无法连接到 updates.jenkins.io,这可能是由于网络问题、DNS 解析问题、代理设置不正确、或者 updates.jenkins.io 暂时不可访问。
可能是你本地的网络环境无法访问外网

解决方法:

1.检查网络、DNS

2.更换Jenkins 更新站点配置,默认的jenkins更新站点是国外的,可能无法访问,可更换国内的更新站点,如: https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
登入jenkins,点击 管理jenkins===》插件==》高级设置,替换升级站点的URL提交

相关推荐
螺丝钉tina10 分钟前
[Playwright][08] Upload 模块自动化:如何设计真实业务测试用例?
运维·自动化·测试用例
迪菲赫尔曼16 分钟前
【基础篇 12】把环境与源码接起来:检查 GPU,再安装服务器上的项目
运维·服务器·开发语言·人工智能·python·yolo·目标检测
cq林志炫26 分钟前
两个Linux服务器之间同步文件
linux·运维·服务器
yyuuuzz1 小时前
云服务器安全组规则优先级的机制记录
运维·服务器·网络·安全·阿里云·aws
KaiwuDB1 小时前
KaiwuDB 运维实战06:数据库备份与恢复:从理论到实战
运维·数据库·时序数据库·kaiwudb
知已难寻2 小时前
01 · OpenStack的认证管理 Keystone
运维·服务器·云原生·云计算·openstack
ai_xiaogui2 小时前
私有化部署大模型实战:PanelAI 一键搭建、Token 计费与多用户隔离
运维·私有化部署·大模型部署·大模型 token 计费·api key 统一管理·多用户实例隔离·应用市场一键部署
企鹅侠客2 小时前
Linux CPU 负载平均值(Load Average)详解:从原理到实践
linux·运维·服务器·服务器负载
易点云徐源2 小时前
HP 暗影精灵 PRO 16 安装双系统后,开机直接进入 Windows,按 F9 才能进入 Ubuntu:GRUB 菜单不显示的处理方法
linux·运维·ubuntu
木雷坞3 小时前
Baserow Docker部署:导入设备借用CSV,再用表单新增登记
运维·docker·容器