SonarQube,TFS 2015 Vnext build -错误:JAVA_HOME 存在但不指向有效的 Java 主文件夹。在那里找不到“\bin\java.exe”文件

Posted

技术标签:

【中文标题】SonarQube,TFS 2015 Vnext build -错误:JAVA_HOME 存在但不指向有效的 Java 主文件夹。在那里找不到“\\bin\\java.exe”文件【英文标题】:SonarQube, TFS 2015 Vnext build -ERROR: JAVA_HOME exists but does not point to a valid Java home Folder. No "\bin\java.exe" file can be found thereSonarQube,TFS 2015 Vnext build -错误:JAVA_HOME 存在但不指向有效的 Java 主文件夹。在那里找不到“\bin\java.exe”文件 【发布时间】:2017-07-05 07:34:21 【问题描述】:

我们正在使用

TFS 2015 SonarQube 5.6 .NET 4.5 jre1.8.0_112 jdk1.8.0_112

我们已经在安装和配置 TFS 和 TFS 构建的同一台服务器上安装和配置 SonarQube。

除了 Sonar Scanner 之外,构建中的所有步骤都成功,它显示以下错误。

我检查并创建了 JAVA_HOME 变量并将其指向正确的路径,我还检查了 JDK 路径,但显示相同的错误。我还检查了短路径。

我不确定我在这里缺少什么。

2017-02-16T09:14:22.3510000Z 调用 SonarQube 扫描仪... 2017-02-16T09:14:22.3510000Z 错误:JAVA_HOME 存在但不指向有效的 Java 主目录 2017-02-16T09:14:22.3510000Z 文件夹。在那里找不到“\bin\java.exe”文件。 2017-02-16T09:14:22.3520000Z ##[错误]SonarQube 扫描仪未成功完成 2017-02-16T09:14:22.3520000Z 14:44:22.31 创建摘要降价文件... 2017-02-16T09:14:22.3520000Z ##[错误]后处理失败。退出代码:1 2017-02-16T09:14:22.3590000Z ##[错误]从批处理文件收到的意外退出代码:1 2017-02-16T09:14:22.3710000Z 如果相关的质量门失败,则构建未设置为失败。

【问题讨论】:

有没有试过重新安装jre/jdk并设置路径? 是的,我已经重新安装了 jre,然后还安装了 JDK,之后也重新启动了服务器 您可以尝试在构建定义中添加一个带有“set”命令的“命令行”任务,以在构建期间显示环境变量并检查“JAVE_HOME”的值吗? 【参考方案1】:

检查您的 JAVA_HOME 路径,并确保它指向 java 根文件夹,在您的情况下指向 C:\Program Files (x86)\Java\1.8.0_112C:\Program Files\Java\1.8.0_112

另外,检查this case 以查看路径中是否有分号。

【讨论】:

是的,我的路径是 C:\Program Files\Java\jre1.8.0_112 我也可以在 bin 文件夹中看到 java exe 路径后没有分号 正如您提到的,您已经检查了 JDK 路径,但显示相同的错误,所以您的问题与 TFS 无关,对吗?你有其他机器设置环境吗? 我已经为 SonarQube 设置了 TFS vNext 构建和添加步骤,即开始和结束步骤所以我不确定错误是否与 TFS 相关,但存在错误。可能是我在这里遗漏了一些东西,但不确定是什么。让我知道我是否可以提供更多信息以获得您的帮助所有步骤都失败了,只有这个,即最后一个失败了。 请尝试在构建代理机器上手动检查JDK路径。如果您收到相同的错误,则问题可能与您的环境有关。如果你能有其他机器来测试JDK环境会更好。 由于我设置新环境的范围有限,我正在查看配置,在 Sonar -> Administration-> SystemInfo 中,我可以在 jvmproperties 下看到 java.home,值设置为 java.home " C:\Program Files\Java\jdk1.8.0_112\jre " 这对声纳执行有影响吗?然后我将 JAVA_HOME 变量更改为环境变量中的同一文件夹,但仍然是同样的问题

以上是关于SonarQube,TFS 2015 Vnext build -错误:JAVA_HOME 存在但不指向有效的 Java 主文件夹。在那里找不到“\bin\java.exe”文件的主要内容,如果未能解决你的问题,请参考以下文章

TFS 2015 更新 3 Vnext 构建定义复制除父项目之外的所有工件

TFS 2015 Build vNext:cURL-FTP-Upload 错误或难以使用

TFS 发布管理 vNext ReleaseManagementShare

为 TFS 发布管理 vNext 打包 DSC 配置

使用 vNext 构建后将内部版本号与 TFS 工作项相关联

SonarQube 5.6 中的 C# 单元测试结果