我正在尝试为我的项目设置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环境变量,我将其指向C:\Program Files (x86)\Java\jdk1.8.0_111
我还使用powershell java -version
命令对其进行了双重检查。它也给了我相同的答案:java version "1.8.0_111"
。任何人都知道如何解决这个问题?
感谢。
答案 0 :(得分:1)
确保JAVA_HOME指向JDK。
答案 1 :(得分:1)
if EXIST
失败,因此解决方案是将JAVA_HOME设置为没有空格的值,例如使用“程序文件”的简称SET JAVA_HOME= C:\Progra~1\Java\jre9
答案 2 :(得分:0)
请尝试重新安装java 8.再次安装JAVA_HOME它会工作。 这个问题可能是因为" Program Files(x86)"
之间的空格答案 3 :(得分:0)
您可以修改
C:\ Users \ HOME_FOLDER.jenkins \ tools \ hudson.plugins.sonar.SonarRunnerInstallation \ SonarQubeScanner \ bin> notepad sonar-scanner.bat
并放
SET JAVA_HOME =< JDK路径>
答案 4 :(得分:0)
我遇到了同样的问题,并为此苦了一段时间。
修改sonar-scanner.bat
后,我发现在执行Sonarqube期间,%JAVA_HOME%
与我在环境变量中配置的完全不同。
原来我在詹金斯的JDK installations
中将Global Tool Configuration
硬编码了。
我的解决方案:
Manage Jenkins
-> Global Tool Configuration
JDK installations...
JAVA_HOME
参数为空,或单击Delete JDK
在这种情况下,Jenkins将使用在执行过程中发现的%JAVA_HOME%
变量,它只是您在环境变量中配置的变量。为我工作
答案 5 :(得分:0)
我遇到了同样的错误。问题在于sonar-scanner.bat引用了错误的%JAVA_HOME%路径。
在sonar-scanner.bat中,将变量“ use_embedded_jre”设置为true,并立即对PATH进行验证。
@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
答案 6 :(得分:0)
您应该在Java安装后重新启动计算机。
答案 7 :(得分:0)
我遇到了同样的问题。在我的机器上,JRE位于C:\Program Files (x86)\Jenkins\jre
。因此,我在系统的PATH环境变量后附加了C:\Program Files (x86)\Jenkins\jre\bin;
有效。
别忘了从Windows服务重新启动Jenkins服务