这是从 azure pipeline 执行 maven verify 命令时收到的错误消息 目标 org.sonarsource.scanner.maven:sonar-maven-plugin:3.10.0.2594:sonar 的执行 default-cli 失败:执行 org.sonarsource.scanner.maven:sonar-maven-plugin:3.10 时遇到 API 不兼容。 0.2594:sonar:java.lang.UnsupportedClassVersionError:org/sonar/batch/bootstrapper/EnvironmentInformation已由更新版本的Java运行时(类文件版本55.0)编译,此版本的Java运行时仅识别类文件版本至 52.0
我期望我的代码应该被构建,并且在从天蓝色管道调用声纳云时应该被成功分析
用于运行 SonarScanner 的 Java:SonarQube 8.9 中使用 Java 8,SonarQube 9.0 及更高版本中使用 Java 11。
您可以将 JDK 升级到 JDK11 或将 SonarQube 降级到 8.9。要在 DevOps 管道中使用 JDK11,您可以尝试以下建议。
Ubuntu 20.04
或 Ubuntu 22.04
运行管道。 Java JDK 的默认版本是 11.0.21+9
。请参阅图片中的软件。javaHomeOption: 'JDKVersion'
和jdkVersionOption: '1.11'
。 - task: Maven@3
displayName: 'Execute Maven goal'
inputs:
mavenPomFile: 'pom.xml'
options: '-Dmaven.test.failure.ignore=true'
mavenOptions: '-Xmx3072m'
mavenVersionOption: 'Default'
javaHomeOption: 'JDKVersion'
jdkVersionOption: '1.11'
jdkArchitectureOption: 'x64'
publishJUnitResults: true
mavenAuthenticateFeed: false
effectivePomSkip: false
sonarQubeRunAnalysis: true
sqMavenPluginVersionChoice: 'latest'
codeCoverageToolOption: 'JaCoCo'
testResultsFiles: '**/TEST-*.xml'
goals: 'verify'