无法在 Windows 上安装 sonarqube 7.1

Posted

技术标签:

【中文标题】无法在 Windows 上安装 sonarqube 7.1【英文标题】:Unable to install sonarqube 7.1 on windows 【发布时间】:2018-10-30 20:13:04 【问题描述】:

我在尝试安装 SonarQube 时遇到问题。

这是日志:

E:\sonarqube-7.1 (1)\sonarqube-7.1\bin\windows-x86-64>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    | 2018.05.21 13:20:36 INFO  app[][o.s.a.AppFileSystem] Cleaning or creating temp directory E:\sonarqube-7.1 (1)\sonarqube-7.1\temp
jvm 1    | 2018.05.21 13:20:36 INFO  app[][o.s.a.es.EsSettings] Elasticsearch listening on /127.0.0.1:9001
jvm 1    | 2018.05.21 13:20:36 INFO  app[][o.s.a.p.ProcessLauncherImpl] Launch process[[key='es', ipcIndex=1, logFilenamePrefix=es]] from [E:\sonarqube-7.1 (1)\sonarqube-7.1\elasticsearch]: C:\Program Files (x86)\Java\jdk1.8.0_20\jre\bin\java -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+AlwaysPreTouch -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.shutdownHookEnabled=false -Dlog4j2.disable.jmx=true -Dlog4j.skipJansi=true -Xms512m -Xmx512m -XX:+HeapDumpOnOutOfMemoryError -Delasticsearch -Des.path.home=E:\sonarqube-7.1 (1)\sonarqube-7.1\elasticsearch -cp lib/* org.elasticsearch.bootstrap.Elasticsearch -Epath.conf=E:\sonarqube-7.1 (1)\sonarqube-7.1\temp\conf\es
jvm 1    | 2018.05.21 13:20:36 INFO  app[][o.s.a.SchedulerImpl] Waiting for Elasticsearch to be up and running
jvm 1    | Error: Could not create the Java Virtual Machine.
jvm 1    | Error: A fatal exception has occurred. Program will exit.
jvm 1    | Must use the serial GC in the DCEVM
jvm 1    | 2018.05.21 13:20:36 WARN  app[][o.s.a.p.AbstractProcessMonitor] Process exited with exit value [es]: 1
jvm 1    | 2018.05.21 13:20:36 INFO  app[][o.s.a.SchedulerImpl] Process [es] is stopped
jvm 1    | 2018.05.21 13:20:36 INFO  app[][o.s.a.SchedulerImpl] SonarQube is stopped
jvm 1    | FATAL StatusLogger Interrupted before Log4j Providers could be loaded.
jvm 1    |  java.lang.InterruptedException
jvm 1    |      at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireInterruptibly(AbstractQueuedSynchronizer.java:1220)
jvm 1    |      at java.util.concurrent.locks.ReentrantLock.lockInterruptibly(ReentrantLock.java:335)
jvm 1    |      at org.apache.logging.log4j.util.ProviderUtil.lazyInit(ProviderUtil.java:121)
jvm 1    |      at org.apache.logging.log4j.util.ProviderUtil.hasProviders(ProviderUtil.java:108)
jvm 1    |      at org.apache.logging.log4j.LogManager.<clinit>(LogManager.java:89)
jvm 1    |      at org.elasticsearch.common.logging.ESLoggerFactory.getLogger(ESLoggerFactory.java:54)
jvm 1    |      at org.elasticsearch.common.logging.Loggers.getLogger(Loggers.java:105)
jvm 1    |      at org.elasticsearch.common.logging.Loggers.getLogger(Loggers.java:72)
jvm 1    |      at org.elasticsearch.common.component.AbstractComponent.<init>(AbstractComponent.java:37)
jvm 1    |      at org.elasticsearch.plugins.PluginsService.<init>(PluginsService.java:97)
jvm 1    |      at org.elasticsearch.client.transport.TransportClient.newPluginService(TransportClient.java:101)
jvm 1    |      at org.elasticsearch.client.transport.TransportClient.buildTemplate(TransportClient.java:126)
jvm 1    |      at org.elasticsearch.client.transport.TransportClient.<init>(TransportClient.java:254)
jvm 1    |      at org.sonar.application.process.EsProcessMonitor$MinimalTransportClient.<init>(EsProcessMonitor.java:109)
jvm 1    |      at org.sonar.application.process.EsProcessMonitor.buildTransportClient(EsProcessMonitor.java:175)
jvm 1    |      at org.sonar.application.process.EsProcessMonitor.getTransportClient(EsProcessMonitor.java:160)
jvm 1    |      at org.sonar.application.process.EsProcessMonitor.checkStatus(EsProcessMonitor.java:134)
jvm 1    |      at org.sonar.application.process.EsProcessMonitor.checkOperational(EsProcessMonitor.java:93)
jvm 1    |      at org.sonar.application.process.EsProcessMonitor.isOperational(EsProcessMonitor.java:78)
jvm 1    |      at org.sonar.application.process.SQProcess.refreshState(SQProcess.java:161)
jvm 1    |      at org.sonar.application.process.SQProcess$EventWatcher.run(SQProcess.java:220)
jvm 1    | ERROR StatusLogger Log4j2 could not find a logging implementation. Please add log4j-core to the classpath. Using SimpleLogger to log to the console...
wrapper  | <-- Wrapper Stopped

【问题讨论】:

你用的是哪个JDK?你可以试试甲骨文吗? 谢谢,我换了JDK版本,问题解决了。 非常感谢您的跟进! 【参考方案1】:

我遇到了类似的问题。我安装了 JDK 1.8,将其恢复为 JDK 11 解决了这个问题。

【讨论】:

以上是关于无法在 Windows 上安装 sonarqube 7.1的主要内容,如果未能解决你的问题,请参考以下文章

SonarQube 无法启动 Windows 10

Sonarqube 和 Jenkins 在 Windows 64 位上安装 - 此时 jre 出乎意料

在 TeamCity 上运行 SonarQube

SonarQube 在具有集成身份验证的 SQL Server 上作为 Windows 服务运行 - 有人有工作示例吗?

SonarQube+sonar-scanner+Maven+jenkins项目构建记录

SonarQube+sonar-scanner+Maven+jenkins项目构建记录