Jenkins Sonaqube插件:JAVA_HOME存在,但未指向有效的JAVA HOME
我正在尝试为我的项目设置Sonarqube,但当我开始生成生成时,出现以下错误:Jenkins Sonaqube插件:JAVA_HOME存在,但未指向有效的JAVA HOME,jenkins,sonarqube,jenkins-plugins,java-home,Jenkins,Sonarqube,Jenkins Plugins,Java Home,我正在尝试为我的项目设置Sonarqube,但当我开始生成生成时,出现以下错误: ERROR: JAVA_HOME exists but does not point to a valid Java home folder. No "\bin\java.exe" file can be found there. The SonarQube Scanner did not complete successfully 我查看了一些文档,但没有一个有用。对于JAVA_HOME环境变量,我将其
ERROR: JAVA_HOME exists but does not point to a valid Java home
folder. No "\bin\java.exe" file can be found there.
The SonarQube Scanner did not complete successfully
我查看了一些文档,但没有一个有用。对于JAVA_HOME环境变量,我将其指向C:\ProgramFiles(x86)\JAVA\jdk1.8.0\u 111
我还使用powershellJAVA-version
命令对其进行了双重检查。它也给了我同样的答案:java版本“1.8.0_111”
。有人知道如何解决这个问题吗
谢谢。确保JAVA_HOME指向JDK。请尝试重新安装JAVA 8。再次设置JAVA_HOME,然后它将工作。 这个问题可能是因为“程序文件(x86)”之间的空格可以编辑 C:\Users\HOME\u FOLDER.jenkins\tools\hudson.plugins.sonar.sonarrunner安装\SonarQubeScanner\bin>notepad sonar-scanner.bat 放
SET JAVA_HOME=
%JAVA\u HOME%
与我在环境变量中配置的完全不同。
原来我在Jenkins的全局工具配置
中硬编码了JDK安装
我的解决方案:
管理Jenkins
->全局工具配置
JAVA\u HOME
参数为空,或者只需单击Delete JDK
在本例中,Jenkins将使用它在执行过程中找到的
%JAVA\u HOME%
变量,它只是您在环境变量中配置的变量。为我工作如果sonar-scanner中存在
。bat失败,因为路径中有空格,所以解决方案是将JAVA\u HOME设置为不带空格的值,例如使用“程序文件”的短名称设置JAVA\u HOME=C:\Progra~1\JAVA\jre9我遇到了相同的错误。问题在于sonar-scanner.bat引用了错误的%JAVA_HOME%路径。在sonar-scanner.bat中,变量“use_embedded_jre”设置为true,并立即对路径进行验证
@REM ==== START VALIDATION ====
@REM *** JAVA EXEC VALIDATION ***
set use_embedded_jre=true
if "%use_embedded_jre%" == "true" (
set "JAVA_HOME=%SONAR_SCANNER_HOME%\jre"
)
将变量值设置为“false”,问题将得到解决
set use_embedded_jre=false
您应该在java安装后重新启动计算机。我也遇到了同样的问题。在我的机器上,JRE位于
C:\ProgramFiles(x86)\Jenkins\JRE
。因此,我在系统的PATH环境变量后面附加了C:\ProgramFiles(x86)\Jenkins\jre\bin代码>
成功了
别忘了从Windows服务重新启动Jenkins服务是否检查了java、exe是否存在?你检查过访问权限了吗?