【问题标题】:Error displayed regarding JAVA_HOME path while running job from jenkins从 jenkins 运行作业时显示有关 JAVA_HOME 路径的错误
【发布时间】:2017-02-05 00:45:38
【问题描述】:

在尝试从 jenkins (slave machine) 运行作业时,它给了我一个错误:

JAVA_HOME is set to an invalid directory.

我检查了我的系统的JAVA_HOME 路径并将其设置为正确的位置。
我机器上的Java路径:JAVA_HOME=C:\Program Files\Java\jdk1.8.0_20

我还从 jenkins 运行了一个命令来获取 java 版本,它显示了机器上安装的正确版本。

jenkins 控制台上显示的确切错误:

java version "1.8.0_20" Java(TM) SE Runtime Environment (build
1.8.0_20-b26) Java HotSpot(TM) 64-Bit Server VM (build 25.20-b23, mixed mode)

错误:

JAVA_HOME 设置为无效目录。 JAVA_HOME = "/usr/java/default" 请在你的 环境以匹配您的 Java 安装位置。

构建步骤“执行 Windows 批处理命令”将构建标记为失败 正在收集元数据... 元数据收集完成。电子邮件被触发 对于:失败 - 任何发送电子邮件触发:失败 - 任何尝试 向空的收件人列表发送电子邮件,忽略。完成的: 失败

【问题讨论】:

    标签: java jenkins


    【解决方案1】:

    自从 JAVA_HOME 被称为“/usr/java/default”以来,问题就在于服务器端。 /usr 是一个 Linux 目录。

    【讨论】:

    • 感谢您的帮助 DLIk !你能帮我知道如何在我们的工作中导出一个将 JAVA_HOME 设置为正确位置的变量。
    【解决方案2】:

    通过将 java_home 设置为作业配置解决了问题:

    • 在作业配置中设置 JAVA_HOME 的步骤

      1.点击配置 2.在构建触发器部分 3.勾选“Inject environment variables to the build process” 4.进入属性内容:JAVA_HOME=C:\Program Files\Java\jdk1.8.0_20(用户系统jdk位置) 5.保存并应用更改。

    供参考:https://wiki.jenkins-ci.org/display/JENKINS/EnvInject+Plugin

    【讨论】:

      【解决方案3】:

      移至该特定 VM 中的环境变量,正确设置 Java_Home 路径, 1. 如果有两个 Java 版本可用,请选择其中包含 JRE 的 JDK。 2.在环境变量的PATH变量中提及Javapath\bin

      这解决了我的问题。

      【讨论】:

        【解决方案4】:

        在我的例子中,我必须为代理定义一个系统属性。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2020-05-22
          • 1970-01-01
          • 1970-01-01
          • 2015-12-03
          • 2016-12-22
          • 1970-01-01
          • 2012-11-17
          • 2017-10-04
          相关资源
          最近更新 更多