我正在使用Sonar来生成我的项目的代码评审报告。但我无法启动服务器。我得到了
HeapDumpOnOutOfMemoryError
跑步时
StartSonar.bat
文件。
请查找声纳启动时生成的日志。
C:\TEMP2\Sonar\sonarqube-4.5\bin\windows-x86-32>StartSonar.bat包装器jvm 1 (3.2.3版) http://wrapper.tanukisoftware.org jvm 1\x{e76f} 1999-2006年Tanuki软件有限公司版权所有。jvm 1 jvm 1 2015.07.28 07:30:51 INFO appo.s.p.m.JavaProcessLauncher appo.s.p.m.JavaProcessLauncher启动过程搜索: C:\Software\jdk1.6.0_18\jre\bin\java -Xmx256m -Xms256m - Xss256k -Djava.net.preferIPv4Stack=true -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyO单独-XX:+HeapDumpOnOutOfMemoryError -Djava.awt.headless=true -Djava.awt.headless=true -cp ./lib/;.lib/search/ org。C:\Users\gxs114\AppData\Local\Temp\sq-process8934190933893070058properties jvm 1 2015.07.28 07:30:57 INFO appo.s.p.m.Monitor Processsearch appo.s.p.m.Monitor Processsearch up jvm 1\x 2015.07.28 07:30:57 INFO appo.s.p.m.JavaProcessLauncher启动处理程序jvm: C:\Software\jdk1.6.0_18\jre\bin\java -Xmx768m -XX:MaxPermSi ze=160m -XX:+HeapDumpOnOutOfMemoryError -Djava.net.preferIPv4Stack=true -Djava.awt编码=utf-8 -Djava.io.tmpdir=C:\TEMP2\Sonar\sonarqube-4.5\temp e .headless=true -cp ./lib/.headless=true/;./lib/server/ org.sonar.server.app.WebServer C:\Users\gxs114\AppData\Local\sq-process4251708419326591677 Processsearch 1+ 2015.07.28 07:30:57 appo.s.p.m.TerminatorThread Processsearch是停止jvm 1\ 2015.07.28 07:30:58 appo.s.p.m.TerminatorThread Processsearch是停止包装器搜索<-包装器已停止 C:\TEMP2\Sonar\sonarqube-4.5\bin\windows-x86-32>
我怎样才能解决这个问题?任何想法/解决方案都很感激。
发布于 2015-07-29 06:59:49
我从声纳日志文件中得到了解决方案。您可以在sonar.log文件中的“sonarqube-4.5\log”目录下找到服务器启动日志。
由于以下端口绑定异常,我无法启动服务器:
2015.07.29 02:46:36 ERROR web[o.a.c.h.Http11Protocol] Failed to initialize end point associated with ProtocolHandler ["http-bio-0.0.0.0-9000"]
java.net.BindException: Address already in use: JVM_Bind /0.0.0.0:9000
at org.apache.tomcat.util.net.JIoEndpoint.bind(JIoEndpoint.java:411) ~[tomcat-embed-core-7.0.54.jar:7.0.54]
at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:640) ~[tomcat-embed-core-7.0.54.jar:7.0.54]
at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:434) ~[tomcat-embed-core-7.0.54.jar:7.0.54]
at org.apache.coyote.http11.AbstractHttp11JsseProtocol.init(AbstractHttp11JsseProtocol.java:119) [tomcat-embed-core-7.0.54.jar:7.0.54]因此,我将sonar.properties文件中的“sonarqube4.5\conf”目录下的端口号从"9000“更改为"4950”。
# TCP port for incoming HTTP connections. Disabled when value is -1.
sonar.web.port=4950
# TCP port for incoming HTTPS connections. Disabled when value is -1 (default).
#sonar.web.https.port=-1更改端口号后,服务器成功启动。
发布于 2016-04-06 00:37:20
如果您已经启动Sonar并在命令提示符下终止了进程,那么JVM仍将在后台运行。
终止java进程,然后再试一次,它可以工作。为我努力工作。
发布于 2016-07-14 12:19:48
这个问题背后的原因是声纳已经在使用端口号,你没有正确地结束声纳。有两种方法可以摆脱这个,
日志看起来就像
java.net.BindException: Address already in use: **JVM_Bind /0.0.0.0:9000**找PID
netstat -a -n -o | find "port_num"致杀过程
taskkill /F /PID "pid"https://stackoverflow.com/questions/31675192
复制相似问题