为了账号安全,请及时绑定邮箱和手机立即绑定

当 Java 更新到 OpenJDK 11 时,Windows 上的 Jenkins 返回不受支持的

当 Java 更新到 OpenJDK 11 时,Windows 上的 Jenkins 返回不受支持的

慕妹3146593 2023-07-28 10:12:27
我一直在 Windows Jenkins 服务器上测试将 Oracle Java 8 更新为 Red Hat OpenJDK Java 11,但我似乎遇到了困难。我的 Jenkins 实例指出 Java 11 不受支持,在更新 JENKINS_HOME JRE 文件后返回以下错误:“我们检测到 Jenkins 不支持您的 JVM。这是由于 Jenkins 使用的库之一存在限制,即 XStream。我采取的步骤:1. 停止并禁用 Jenkins 服务2. 从控制面板卸载 Oracle Java 8 191,并删除 Java\jdk1.8.0_191 中的剩余程序文件3. 将 Red Hat OpenJDK 11.0.4 msi 安装到 Java\jdk11。 0.44.更新了 JAVA_HOME 和 PATH 变量以指向新的 Java 位置5. 使用 JDK 中的所有模块从 JDK 11 文件创建 JRE 11。5. 将 Jenkins 服务设置为自动并启动它。确认 Jenkins 站点正常工作,然后再次停止并禁用服务6. 备份 JENKINS_HOME 后,将其中的 JRE 文件夹替换为我从 JDK 11 文件创建的 jre11.0.4 文件夹。7.启动Jenkins服务。导航到 Jenkins 站点后,我收到了有关 JVM 不受支持的错误消息。8. 停止/禁用 Jenkins 服务,然后将 Jenkins.war 更新为 Jenkins 2.194 每周版本。(我之前运行的是 Jenkins LTS 2.176.3。)启动 Jenkins 服务,却收到相同的错误。我不知道如何继续,“将 Jenkins Java 版本从 8 升级到 11” Jenkins 文档目前没有太大帮助。升级 Jenkins 部分的最后一步是“使用包管理器安装新的 JVM”和“确保默认 JVM 是新安装的版本。如果不是,请在 Jenkins 启动脚本中使用正确的 java 命令”。这些说明似乎特定于在 Linux 操作系统上运行的 Jenkins 实例。如果它们适用于所有操作系统类型,我不确定如何在 Windows 环境中遵循它们。我还查看了 Jenkins 的关于在 Java 11 上运行 Jenkins的文档,但也没有找到任何有用的信息。任何建议让任何版本的 Jenkins 与 OpenJDK 11 一起运行或者我的下一步应该在这里进行,我们将不胜感激。软件和版本:- Windows Server 2016- Jenkins LTS 2.176.3- Jenkins 每周发布 2.194- Oracle Java JDK 和 JRE 1.8.0.191- Red Hat OpenJDK 1.11.0.4 和从 JDK 文件中的所有模块创建的 JRE
查看完整描述

1 回答

?
翻过高山走不出你

TA贡献1875条经验 获得超3个赞

所以看来我错过了 Jenkins.xml 文件中的以下说明:

如果您想使用特定版本的 Java 运行 Jenkins,请指定 java.exe 的完整路径。

我团队的另一名成员看到了这一点,并向 Jenkins.xml 文件添加了 JAVA11_HOME 环境:

<env name="JAVA11_HOME" value="D:\Java\jdk11.0.4"/>

然后更新 Jenkins.xml 中的可执行路径:
从默认值:

<executable>%BASE%\jre\bin\java</executable>

到:

<executable>%JAVA11_HOME%\bin\java</executable>

Jenkins 终于在 Java 11 上启动并运行了!


查看完整回答
反对 回复 2023-07-28
  • 1 回答
  • 0 关注
  • 136 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信