You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SonarQube社区版v8启动后意外终止问题求助

SonarQube社区版v8启动失败问题排查

问题描述

安装SonarQube社区版(v8.9.9.56886),已通过Windows安装程序完成JDK 11部署,修改wrapper.java.command配置为wrapper.java.command=C:\Program Files\Java\jdk-11.0.16\bin\java.exe(也尝试过不带.exe的路径)。启动后进程仅运行1-2秒就终止,访问localhost:9000页面显示“加载中”。尝试删除temp文件夹内容、结束Java进程后问题依旧。

启动日志

StartSonar.bat
wrapper  | --> Wrapper Started as Console
wrapper  | Launching a JVM...
jvm 1    | Wrapper (Version 3.2.3) http://wrapper.tanukisoftware.org
jvm 1    |   Copyright 1999-2006 Tanuki Software, Inc.  All Rights Reserved.
jvm 1    |
jvm 1    | 2022.09.07 10:39:27 INFO  app[][o.s.a.AppFileSystem] Cleaning or creating temp directory C:\sonarqube\sonarqube-8.9.9.56886\temp
jvm 1    | 2022.09.07 10:39:27 INFO  app[][o.s.a.es.EsSettings] Elasticsearch listening on [HTTP: 127.0.0.1:9001, TCP: 127.0.0.1:50285]
jvm 1    | 2022.09.07 10:39:27 INFO  app[][o.s.a.ProcessLauncherImpl] Launch process[[key='es', ipcIndex=1, logFilenamePrefix=es]] from [C:\sonarqube\sonarqube-8.9.9.56886\elasticsearch]: C:\Program Files\Java\jdk-11.0.16\bin\java -XX:+UseG1GC -Djava.io.tmpdir=C:\sonarqube\sonarqube-8.9.9.56886\temp -XX:ErrorFile=../logs/es_hs_err_pid%p.log -Des.networkaddress.cache.ttl=60 -Des.networkaddress.cache.negative.ttl=10 -XX:+AlwaysPreTouch -Xss1m -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Djna.nosys=true -Djna.tmpdir=C:\sonarqube\sonarqube-8.9.9.56886\temp -XX:-OmitStackTraceInFastThrow -Dio.netty.noUnsafe=true -Dio.netty.noKeySetOptimization=true -Dio.netty.recycler.maxCapacityPerThread=0 -Dio.netty.allocator.numDirectArenas=0 -Dlog4j.shutdownHookEnabled=false -Dlog4j2.disable.jmx=true -Dlog4j2.formatMsgNoLookups=true -Djava.locale.providers=COMPAT -Xmx512m -Xms512m -XX:MaxDirectMemorySize=256m -XX:+HeapDumpOnOutOfMemoryError -Delasticsearch -Des.path.home=C:\sonarqube\sonarqube-8.9.9.56886\elasticsearch -Des.path.conf=C:\sonarqube\sonarqube-8.9.9.56886\temp\conf\es -cp lib/* org.elasticsearch.bootstrap.Elasticsearch
jvm 1    | 2022.09.07 10:39:27 INFO  app[][o.s.a.SchedulerImpl] Waiting for Elasticsearch to be up and running
jvm 1    | 2022.09.07 10:39:50 INFO  app[][o.s.a.SchedulerImpl] Process[es] is up
jvm 1    | 2022.09.07 10:39:50 INFO  app[][o.s.a.ProcessLauncherImpl] Launch process[[key='web', ipcIndex=2, logFilenamePrefix=web]] from [C:\sonarqube\sonarqube-8.9.9.56886]: C:\Program Files\Java\jdk-11.0.16\bin\java -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Djava.io.tmpdir=C:\sonarqube\sonarqube-8.9.9.56886\temp -XX:-OmitStackTraceInFastThrow --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED -Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError -Dhttp.nonProxyHosts=localhost|127.*|[::1] -cp ./lib/sonar-application-8.9.9.56886.jar;C:\sonarqube\sonarqube-8.9.9.56886\lib\jdbc\h2\h2-1.4.199.jar org.sonar.server.app.WebServer C:\sonarqube\sonarqube-8.9.9.56886\temp\sq-process16684317784465325676properties
jvm 1    | 2022.09.07 10:40:03 WARN  app[][startup] ####################################################################################################################
jvm 1    | 2022.09.07 10:40:03 WARN  app[][startup] Default Administrator credentials are still being used. Make sure to change the password or deactivate the account.
jvm 1    | 2022.09.07 10:40:03 WARN  app[][startup] ####################################################################################################################
jvm 1    | 2022.09.07 10:40:18 INFO  app[][o.s.a.SchedulerImpl] Process[web] is stopped
jvm 1    | 2022.09.07 10:40:18 INFO  app[][o.s.a.SchedulerImpl] Process[es] is stopped
jvm 1    | 2022.09.07 10:40:18 INFO  app[][o.s.a.SchedulerImpl] SonarQube is stopped
wrapper  | <-- Wrapper Stopped

排查与解决步骤

  • 查看Web服务详细日志:前往SonarQube安装目录的logs文件夹,打开web.log文件,里面会记录Web服务终止的具体原因(如内存溢出、端口冲突、文件权限不足等),这是定位问题的核心依据。
  • 验证JDK环境:
    • 确认使用的是官方Oracle JDK 11或OpenJDK 11正式版本,避免使用修改版或精简版JDK。
    • 检查系统JAVA_HOME环境变量是否指向JDK 11的安装目录,且PATH变量中JDK 11的bin目录优先级高于其他Java版本。
  • 调整内存配置:默认内存分配可能不足以支撑Web服务运行,修改conf/sonar.properties中的以下参数(根据系统可用内存调整,建议不超过系统内存的50%):
    sonar.web.javaOpts=-Xmx1024m -Xms512m -XX:MaxMetaspaceSize=256m
    sonar.search.javaOpts=-Xmx1024m -Xms512m -XX:MaxDirectMemorySize=256m
    
  • 检查端口占用:使用命令netstat -ano | findstr :9000和netstat -ano | findstr :9001,确认SonarQube主端口(9000)和内置ES端口(9001)未被其他程序占用,若占用则终止对应进程或修改SonarQube端口配置。
  • 以管理员身份运行:右键点击StartSonar.bat,选择“以管理员身份运行”,避免因Windows权限限制导致文件读写或进程启动失败。
  • 临时关闭安全软件:暂时关闭Windows Defender防火墙或第三方杀毒软件,排除安全软件拦截SonarQube进程或端口的可能。
  • 检查系统兼容性:确保Windows版本为Win10及以上,且已安装VC++ Redistributable运行库,SonarQube内置的ES对系统环境有一定要求。

内容的提问来源于stack exchange,提问作者Developing Electronics

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 01:05:26