java - 如何在启动代理时强制 Jenkins 2.107.2 使用 java-1.8.0?

标签 java jenkins jenkins-plugins jenkins-pipeline

我在 Jenkins 2.107.2 上启动代理时遇到以下错误,看起来这是一个常见的错误,根据我的作业,听起来需要使用 1.8 启动代理,我安装了 1.8 和我的/usr/lib/jvm 文件夹如下所示,但是当我启动代理时它仍然使用 java 1.7.0,我如何强制 Jenkins 使用 1.8 启动代理?

/usr/lib/jvm

enter image description here

错误:

[05/02/18 10:17:59] [SSH] Starting sftp client.
[05/02/18 10:17:59] [SSH] Copying latest slave.jar...
[05/02/18 10:17:59] [SSH] Copied 762,466 bytes.
Expanded the channel window size to 4MB
[05/02/18 10:17:59] [SSH] Starting slave process: cd "/home/username" && /usr/lib/jvm/java-1.7.0-openjdk-amd64/bin/java  -jar slave.jar
Exception in thread "main" java.lang.UnsupportedClassVersionError: hudson/remoting/Launcher : Unsupported major.minor version 52.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:803)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)
Slave JVM has terminated. Exit code=1
[05/02/18 10:17:59] Launch failed - cleaning up connection
[05/02/18 10:17:59] [SSH] Connection closed

最佳答案

您可以在节点启动配置中显式设置 java 可执行文件的路径:

  1. 点击管理 Jenkins
  2. 点击管理节点
  3. 点击您要启动的节点
  4. 点击配置
  5. 启动方法下有一个标签为高级...的按钮;点击它
  6. 找到JavaPath选项并将其设置为您要使用的java可执行文件的完整路径;喜欢:

    /usr/lib/jvm/java-1.8.0-openjdk-amd64/bin/java
    
  7. 保存

  8. 重启节点

关于java - 如何在启动代理时强制 Jenkins 2.107.2 使用 java-1.8.0?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50140565/

相关文章:

Java 数组串联

powershell - jenkins是否通过-noprofile参数以某种方式运行powershell步骤?

jenkins - Jenkins 如何在远程从站上执行代码?

jenkins - Git 使用用户名和密码 checkout jenkins 管道中的外部项目

tomcat - 如何使用内置 Java App Layer 在 AWS OpsWorks 上部署 Jenkins?

grails - 如何在不替换 Jenkins 中每个构建的旧 war 的情况下产生新 war ?

jenkins - 在所有 Jenkins 页面上显示公告

java - Android如何构造与此类似的字节数组

java - 将 JScrollPane 添加到 JTable 不显示

java - 如何使用 gl.glTranslatef() 定期更改坐标?