有没有办法改变 Linux Jenkins 服务器使用的 java JRE?

有没有办法改变 Linux Jenkins 服务器使用的 java JRE?

Jenkins 服务器在 Linux 机器上的 Java 1.7 下运行,我需要将其更改为 1.8,以便可以运行特定的插件。

Linux 机器安装了 Java 1.8 JDK/JRE,但我找不到方法告诉 Jenkins 服务器使用它?我在 Windows 服务器上找到了如何执行此操作的指南,但没有与 Linux Jenkins 服务器相关或传输的内容。

有没有办法更改 Linux 上 Jenkins 服务器使用的 JRE?

类似于这个的 Linux 版本:https://dzone.com/articles/make-jenkins-windows-service

答案1

根据发行版的不同,您将拥有“/etc/sysconfig/jenkins”或“/etc/default/jenkins”之一。

这将具有一个用于设置 Java 主目录位置的属性。通常所有选项都被注释掉,以显示文件可以配置的内容。

答案2

在 Jenkins 主页上,单击左侧的“管理 Jenkins”。访问“全局工具配置”菜单,在此菜单下,大约一半的位置应该显示“JDK 安装”。单击该按钮,它将打开一个新菜单,您可以在其中添加备用 JDK。添加后,进入要构建的项目并单击“配置”。同样,大约一半的位置将出现一个“JDK”下拉菜单。现在将出现新的 JDK,您可以选择它来构建您的项目。

但是,如果您的意思是希望整个服务从不同的 VM 运行,那就有点棘手了。Jenkins 启动脚本旨在尝试“猜测”您的 VM,以便更轻松地跨多种 Linux 版本进行安装。找到启动脚本(Red Hat RPM 安装将其放在 /etc/rc.d/init.d/jenkins 中)并通读它。您将找到一个标记为“候选”的部分,并注意循环如何遍历可能的 JVM可能在系统上。您可以编辑此列表以仅包含您想要使用的 VM,然后停止/启动以强制它使用您想要的 VM。请确​​保在编辑脚本之前复制它,以防万一。

答案3

这是针对碰巧遇到此问题的 Windows 用户(就像我一样)的。您需要设置系统环境变量 JAVA_HOME。

  1. 停止詹金斯服务
  2. 在 jenkins 基础文件夹中编辑 jenkins.xml - 在此行“%JAVA_HOME%\jre\bin\java”中将 %BASE% 更改为 %JAVA_HOME%

    %JAVA_HOME%\jre\bin\java -Xrs -Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%\jenkins.war" --httpPort=8080 --webroot="%BASE%\war"

  3. 启动詹金斯

答案4

定义JAVA_HOME变量:

/etc/profile使用您最喜欢的文本编辑器进行编辑。

export JAVA_HOME="path to java"
export PATH=$JAVA_HOME/bin:$PATH

然后

source /etc/profile

以应用更改。

相关内容