SonarQube V10启动失败求助:执行StartSonar.bat无响应,日志显示WinSW调试信息
SonarQube V10启动失败排查方案
问题复现
解压SonarQube V10社区版到C:\sonarqube,执行C:\sonarqube\bin\windows-x86-64\StartSonar.bat后仅显示Starting SonarQube...就退回命令行,服务未启动,日志输出:
2023-06-13 21:54:42,691 DEBUG - Starting WinSW in console mode
已尝试:管理员权限启动cmd、更换SonarQube版本、确认9000端口未占用、验证JDK17环境变量配置正确。
额外排查&解决步骤
1. 检查WinSW配置文件
进入C:\sonarqube\bin\windows-x86-64目录,找到sonarqube.xml(WinSW的配置文件),检查以下项:
- 确认
<executable>指向的JDK路径是否正确,直接写绝对路径避免环境变量解析问题,示例:<executable>C:\Program Files\Java\jdk-17\bin\java.exe</executable> - 检查
<arguments>里的JVM参数是否符合JDK17要求,移除--illegal-access=permit这类在JDK17中失效的过时参数。
2. 获取更详细的启动日志
修改sonarqube.xml中的<logmode>为rotate,并设置日志级别为debug,重新启动后查看C:\sonarqube\bin\windows-x86-64下的sonarqube.log,定位具体启动失败原因。
3. 修复目录权限问题
右键C:\sonarqube目录→属性→安全→编辑,给当前运行用户添加完全控制权限(包含子目录和文件),避免权限不足导致进程无法初始化。
4. 绕过WinSW手动启动核心进程
直接执行SonarQube的Java启动命令,绕过WinSW工具排查问题,命令如下(替换10.x为实际版本号):
"C:\Program Files\Java\jdk-17\bin\java.exe" -jar ..\..\lib\sonar-application-10.x.jar
观察命令行输出的错误信息,直接定位JVM启动或SonarQube初始化的问题。
5. 调整JVM内存配置
修改C:\sonarqube\conf\sonar.properties中的JVM内存参数,增大堆内存避免启动时内存不足:
sonar.javaOpts=-Xmx1024m -Xms512m -XX:+HeapDumpOnOutOfMemoryError
内容的提问来源于stack exchange,提问作者Настя
相关产品推荐
相关产品推荐

