微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Sonarqube 设置在 MAC 终端中引发“无法创建 Java 虚拟机”错误

如何解决Sonarqube 设置在 MAC 终端中引发“无法创建 Java 虚拟机”错误

嗨,我正在关注下面的 youtube 教程 Youtube tutorial

在这一步 Mike:macosx-universal-64 mike$ sh sonar.sh console 出现以下错误

    Running SonarQube...
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    | 2021.04.22 11:02:40 INFO  app[][o.s.a.AppFileSystem] Cleaning or creating temp directory /Users/mike/Downloads/sonarqube/temp
jvm 1    | 2021.04.22 11:02:40 INFO  app[][o.s.a.es.EsSettings] Elasticsearch listening on [HTTP: 127.0.0.1:9001,TCP: 127.0.0.1:50435]
jvm 1    | 2021.04.22 11:02:40 INFO  app[][o.s.a.ProcessLauncherImpl] Launch process[[key='es',ipcIndex=1,logFilenamePrefix=es]] from [/Users/mike/Downloads/sonarqube/elasticsearch]: /Users/mike/Downloads/sonarqube/elasticsearch/bin/elasticsearch
jvm 1    | 2021.04.22 11:02:40 INFO  app[][o.s.a.SchedulerImpl] Waiting for Elasticsearch to be up and running
jvm 1    | warning: no-jdk distributions that do not bundle a JDK are deprecated and will be removed in a future release
jvm 1    | Unrecognized VM option 'UseConcmarkSweepGC'
jvm 1    | Error: Could not create the Java Virtual Machine.
jvm 1    | Error: A fatal exception has occurred. Program will exit.
jvm 1    | 2021.04.22 11:02:40 WARN  app[][o.s.a.p.AbstractManagedProcess] Process exited with exit value [es]: 1
jvm 1    | 2021.04.22 11:02:40 INFO  app[][o.s.a.SchedulerImpl] Process[es] is stopped
jvm 1    | 2021.04.22 11:02:40 INFO  app[][o.s.a.SchedulerImpl] SonarQube is stopped
jvm 1    | 2021.04.22 11:02:41 ERROR app[][o.s.a.p.EsManagedProcess] Failed to check status
jvm 1    | java.lang.RuntimeException: thread waiting for the response was interrupted
jvm 1    |  at org.elasticsearch.client.RestClient.extractAndWrapCause(RestClient.java:848)
jvm 1    |  at org.elasticsearch.client.RestClient.performRequest(RestClient.java:283)
jvm 1    |  at org.elasticsearch.client.RestClient.performRequest(RestClient.java:270)
jvm 1    |  at org.elasticsearch.client.RestHighLevelClient.internalPerformRequest(RestHighLevelClient.java:1621)
jvm 1    |  at org.elasticsearch.client.RestHighLevelClient.performRequest(RestHighLevelClient.java:1591)
jvm 1    |  at org.elasticsearch.client.RestHighLevelClient.performRequestAndParseEntity(RestHighLevelClient.java:1561)
jvm 1    |  at org.elasticsearch.client.ClusterClient.health(ClusterClient.java:119)
jvm 1    |  at org.sonar.application.es.EsConnectorImpl.getClusterHealthStatus(EsConnectorImpl.java:56)
jvm 1    |  at org.sonar.application.process.EsManagedProcess.checkStatus(EsManagedProcess.java:89)
jvm 1    |  at org.sonar.application.process.EsManagedProcess.checkOperational(EsManagedProcess.java:74)
jvm 1    |  at org.sonar.application.process.EsManagedProcess.isOperational(EsManagedProcess.java:59)
jvm 1    |  at org.sonar.application.process.ManagedProcessHandler.refreshState(ManagedProcessHandler.java:220)
jvm 1    |  at org.sonar.application.process.ManagedProcessHandler$EventWatcher.run(ManagedProcessHandler.java:285)
jvm 1    | Caused by: java.lang.InterruptedException: null
jvm 1    |  at java.base/java.lang.Object.wait(Native Method)
jvm 1    |  at java.base/java.lang.Object.wait(Object.java:320)
jvm 1    |  at org.apache.http.concurrent.BasicFuture.get(BasicFuture.java:82)
jvm 1    |  at org.apache.http.impl.nio.client.FutureWrapper.get(FutureWrapper.java:70)
jvm 1    |  at org.elasticsearch.client.RestClient.performRequest(RestClient.java:279)
jvm 1    |  ... 11 common frames omitted
wrapper  | <-- Wrapper Stopped

我尝试使用此命令 /usr/libexec/java_home -V 并得到以下结果

Matching Java Virtual Machines (1):
    16,x86_64: "Java SE 16"    /Library/Java/JavaVirtualMachines/jdk-16.jdk/Contents/Home

/Library/Java/JavaVirtualMachines/jdk-16.jdk/Contents/Home

我对此很陌生,并试图了解问题究竟是什么以及如何解决这个问题。

请帮帮我

解决方法

你需要降低你的Java。 Sonarqube 服务器仅支持 Java 11 并使用已在更高 Java 版本中删除的 UseConcMarkSweepGC 选项。

SonarQube 服务器需要版本 11。官方不支持 Java 11 以上的版本。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。