gradle - 使用 Java 11 运行 Sonar Scanner 时主版本号错误

标签 gradle sonarqube-scan sonar-runner java-11 sonarscanner

我目前正在将一个项目从 java 8 迁移到 java 11,并且一直在使用带有 gradle 的 Sonar 扫描器将代码发送到 SonaQube。迁移到 Open JDK 11 后,运行 gradle sonarqube 任务时出现以下错误:

java.lang.IllegalArgumentException: 不支持的类文件主要版本 55

我在网上看到扫描仪应该使用 jdk 8 运行,即使分析可以在一个版本的 java 文件上运行,但一直无法弄清楚。

理想情况下,我可以使用 Java 11 JDK 运行 gradle sonarqube。我发现另一个问题似乎有 success with Java 11 using Maven ,但他们的错误是不同的,我认为他们的解决方案不适用于我。

这个问题是否可以解决,还是我需要等待 Sonar Scanner 支持 JDK 11?

最佳答案

如果像我这样的人,这会有所帮助。
源代码 Java 8(55),带有 jenkins 和 sonarqube 扫描器。
我的错误是

INFO: SonarScanner 4.6.2.2472
INFO: Java 11.0.11 AdoptOpenJDK (64-bit)
.....
java.lang.IllegalArgumentException: Unsupported class file major version 55

检查此链接:Why does sonar-scanner force the usage of the embedded JRE?
并更改您的 sonnar-scanner.bat 或 sonnar-scanner.sh
use_embedded_jre=false

关于gradle - 使用 Java 11 运行 Sonar Scanner 时主版本号错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52763065/

相关文章:

gradle - 使用远程存储库时,Gradle构建问题

android - 没有gradle的缓存版本-不禁用离线模式

java - Sonar 不扫描 *.java 文件

sonarqube - 不存在的JAR的“IllegalStateException: No files nor directories matching”

azure - 无法连接到端口 9000 的 SonarQube 私有(private) IP

android - 构建期间找不到 Github 包

SonarQube - 如何使用

objective-c - 使用 SonarQube 分析 iOS/Swift 移动应用程序

delphi - sonar delphi插件自定义规则

kotlin - 如何使用 Kotlin DSL 选择性地应用一些插件以及使用 gradle 和 android 的插件 block