Sonar Server 5.6升级Java后故障,指定Java 1.8仍调用1.9求助
解决Sonar Server 5.6启动时仍调用Java 9的问题
我来帮你搞定这个问题,从你提供的日志和配置来看,主要是wrapper.conf的配置错误加上环境变量的干扰导致的,按下面的步骤操作就能解决:
1. 修正wrapper.conf的重复配置问题
你在wrapper.conf里写了两行重复的wrapper.java.command,这会导致配置失效,正确的配置应该是一行完整的Java路径:
打开sonarqube-5.6\conf\wrapper.conf,找到相关配置行,修改为:
wrapper.java.command=C:\Program Files\Java\jdk1.8.0_102\bin\java.exe
删掉原来重复的那行wrapper.java.command=java,确保路径指向JDK8的java.exe完整路径。
2. 检查并调整系统环境变量
即使wrapper.conf配置正确,系统环境变量的优先级可能会覆盖它:
- 打开系统环境变量设置,检查
PATH变量,把Java8的C:\Program Files\Java\jdk1.8.0_102\bin移到最前面,或者暂时移除Java9的路径 - 设置
JAVA_HOME为C:\Program Files\Java\jdk1.8.0_102 - 打开新的命令提示符,输入
java -version,确认输出的是Java 1.8.x版本,这样Sonar启动时才会调用正确的Java版本
3. 清理Sonar临时文件
日志里提到了Sonar的临时目录,残留的文件可能导致配置异常:
手动删除C:\sonar\sonarqube-5.6\temp下的所有文件和文件夹,然后再启动Sonar。
4. 验证启动结果
重新运行StartSonar.bat,查看日志里的Launch process[es]行,确认Java路径已经变成JDK8的路径。如果一切正常,之前的GC参数警告和jar文件错误都会消失,Sonar就能正常启动了。
内容的提问来源于stack exchange,提问作者Atul Sureka
相关产品推荐
相关产品推荐

