无法在Windows 7上启动Sonarqube 6.7

无法在Windows 7上启动Sonarqube 6.7,sonarqube,sonarqube-ops,Sonarqube,Sonarqube Ops,我无法在Windows 7上运行Sonarqube 6.7 我刚从网站上下载了它。我使用JDK1.8.0144作为Java运行时。当我运行“StartSonar.bat”时,我得到以下异常: wrapper |-->包装器作为控制台启动 包装器|启动JVM。。。 jvm 1 |包装器(版本3.2.3)http://wrapper.tanukisoftware.org jvm 1 |版权1999-2006塔努基软件公司。保留所有权利。 JVM1| jvm 1 | 2017.12.11 14:17

我无法在Windows 7上运行Sonarqube 6.7

我刚从网站上下载了它。我使用JDK1.8.0144作为Java运行时。当我运行“StartSonar.bat”时,我得到以下异常:

wrapper |-->包装器作为控制台启动
包装器|启动JVM。。。
jvm 1 |包装器(版本3.2.3)http://wrapper.tanukisoftware.org
jvm 1 |版权1999-2006塔努基软件公司。保留所有权利。
JVM1|
jvm 1 | 2017.12.11 14:17:21信息应用程序[][o.s.a.AppFileSystem]清理或创建临时目录C:\Tools\sonarqube-6.7\temp
jvm 1 | 2017.12.11 14:17:21信息应用程序[][o.s.a.es.EsSettings]Elasticsearch监听/127.0.0.1:9001
jvm 1 | 2017.12.11 14:17:21信息应用程序[][o.s.a.p.ProcessLauncherImpl]从[C:\Tools\sonarqube-6]启动过程[[key='es',IPCDINDEX=1,logFilenamePrefix=es]]。
7\elasticsearch]:C:\Java\jdk1.8.0\u 144\jre\bin\Java-XX:+UseComcMarkSweepGC-XX:cmSinitiatingOccupencyFraction=75-XX:+UseCSinitingOccupencyYony-XX:+Always
PreTouch-server-Xss1m-Djava.awt.headless=true-Dfile.encoding=UTF-8-Djna.nosys=true-Djdk.io.permissionsUseCanonicalPath=true-Dio.netty.noUnsafe=true-Dio。
netty.noKeySetOptimization=true-Dio.netty.recycler.maxCapacityPerThread=0-Dlog4j.shutdownhokenabled=false-Dlog4j2.disable.jmx=true-Dlog4j.skipJansi=true-X
ms512m-Xmx512m-XX:+heapdumponootfmemoryerror-Delasticsearch-Des.path.home=C:\Tools\sonaqube-6.7\elasticsearch-cp lib/*org.elasticsearch.bootstrap.Elasti
csearch-Epath.conf=C:\Tools\sonaqube-6.7\temp\conf\es
jvm 1 | 2017.12.11 14:17:21信息应用程序[][o.s.a.SchedulerImpl]正在等待Elasticsearch启动并运行
jvm 1 | 2017.12.11 14:17:21信息应用程序[][o.e.p.PluginsService]未加载模块
jvm 1 | 2017.12.11 14:17:21信息应用程序[][o.e.p.PluginsService]加载的插件[org.elasticsearch.transport.Netty4Plugin]
jvm 1 | 2017.12.11 14:17:22警告应用程序[][o.e.t.n.Netty4Transport]在传输层[[id:0xcd8d6c6a,L:/127.0.0.1:63293-R:/127.0.0.1:9001]上捕获异常
]],关闭连接
jvm 1 | io.netty.handler.codec.DecoderException:java.io.StreamCorruptedException:无效的内部传输消息格式,got(48,54,54,50)
JVM1 | at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:459)
JVM1 | at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:265)
JVM1 |位于io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
JVM1 |位于io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
JVM1 |位于io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
JVM1 |位于io.netty.handler.logging.LoggingHandler.channelRead(LoggingHandler.java:241)
JVM1 |位于io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
JVM1 |位于io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
JVM1 |位于io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
jvm 1 |位于io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1334)
JVM1 |位于io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
JVM1 |位于io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
jvm 1 |位于io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:926)
JVM1 |位于io.netty.channel.nio.AbstractNioByteChannel$niobytuensafe.read(AbstractNioByteChannel.java:134)
JVM1 |位于io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:644)
jvm 1 |位于io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:579)
JVM1 |位于io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:496)
JVM1 |位于io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:458)
jvm 1 | at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858)
JVM1 |位于java.lang.Thread.run(Thread.java:748)
jvm 1 |由以下原因引起:java.io.StreamCorruptedException:无效的内部传输消息格式,got(48,54,54,50)
jvm 1 |位于org.elasticsearch.transport.tcpttransport.validateMessageHeader(tcpttransport.java:1276)
jvm 1 |位于org.elasticsearch.transport.netty4.Netty4SizeHeaderFrameDecoder.decode(Netty4SizeHeaderFrameDecoder.java:36)
jvm 1 | at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:489)
jvm 1 | at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:428)

jvm 1 |。。。19省略公共帧
错误是由于ElasicSearch端口与另一个端口冲突。我将其重新配置为使用自由端口(将其设置为0),一切正常。

我也遇到了同样的问题。经过一些故障排除,我意识到SonarQube使用的默认Elasticsearch端口已在我的windows环境中使用

命令提示符中netstat-ao的输出

Proto  Local Address          Foreign Address      State           PID
TCP    0.0.0.0:9001           UserX:0              LISTENING       4
以下是sonar.properties中的默认Elasticsearch配置部分

# Elasticsearch port. Default is 9001. Use 0 to get a free port.
# As a security precaution, should be blocked by a firewall and not exposed to the Internet.
# sonar.search.port=9001
因此,我将sonar.properties中的Elasticsearch端口更改为9005,它的工作非常出色。您还可以按照此处的说明使用端口0来使用空闲端口

# Elasticsearch port. Default is 9001. Use 0 to get a free port.
# As a security precaution, should be blocked by a firewall and not exposed to the Internet.
sonar.search.port=9005

在Windows上,您可以尝试终止进程:

netstat -ano | findstr :PORT_NUMBER
然后使用PID执行下一步:

taskkill /PID PID /F
在某些情况下,如gitbash,双斜杠是必要的


你能发布你的配置(sonar.properties文件)吗?我使用软件发行版直接提供的任何东西。我所做的只是解压缩到一个目录,并试图
taskkill //PID PID //F