Azure DevOps经典流水线集成SonarCloud遇Java版本兼容问题
Maven项目Azure DevOps流水线集成SonarCloud的Java版本兼容问题
我在将Maven管理的Java项目的Azure DevOps经典流水线与SonarCloud集成时遇到版本兼容问题。最初在Jenkins测试集成时就发现Java版本问题,升级服务器Java版本、更新部分SonarQube插件后问题仍存在,切换到Azure DevOps后问题依旧。
初始错误信息
[INFO] Reactor Summary: [INFO] [INFO] petclinic_api 0.0.1-SNAPSHOT ....................... FAILURE [ 5.253 s] [INFO] dto 0.0.1-SNAPSHOT ................................. SUCCESS [ 9.515 s] [INFO] exception 0.0.1-SNAPSHOT ........................... SUCCESS [ 0.200 s] [INFO] petclinic-service-internal 2018.9-RELEASE .......... SUCCESS [ 39.459 s] [INFO] petclinic-service-external 2018.9-RELEASE .......... SUCCESS [ 5.430 s] [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.11.0.3922:sonar (default-cli) on project my-project-name: The plugin [python] does not support Java 11.0.22: org/sonar/plugins/python/PythonPlugin has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 55.0 -> [Help 1]
流水线主要配置
Classic Pipeline Name: Maven with SonarCloud Agent: Azure Pipelines (ubuntu-latest) Scanner: Use standalone scanner Mode: Manual provide configuration Maven goals and options: package -e -Dmaven.test.skip=true Code analysis: Run SonarQube or SonarCloud analysis (use latest version) JDK version: Default
主pom.xml内容
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.petclinic</groupId> <artifactId>petclinic_service</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>pom</packaging> <name>petclinic_api</name> <url>http://maven.apache.org</url> <modules> <module>dto</module> <module>exception</module> <module>petclinic-saas</module> <module>petclinic-api</module> </modules> </project>
已尝试的解决步骤及新问题
- 升级服务器Java版本并更新部分SonarQube插件,未解决兼容性问题;
- 升级Jenkins版本,问题仍存在;
- 将JDK版本改为17后,出现新错误:
[INFO] Reactor Summary: [INFO] [INFO] petclinic_api 0.0.1-SNAPSHOT ....................... SUCCESS [ 0.005 s] [INFO] dto 0.0.1-SNAPSHOT ................................. SUCCESS [ 9.315 s] [INFO] exception 0.0.1-SNAPSHOT ........................... SUCCESS [ 0.219 s] [INFO] petclinic-service-internal 2018.9-RELEASE .......... FAILURE [ 18.852 s] [INFO] petclinic-service-external 2018.9-RELEASE .......... SKIPPED [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile (default-compile) on project petclinic-saas: Fatal error compiling: java.lang.IllegalAccessError: class lombok.javac.apt.LombokProcessor (in unnamed module @0x1667a6f7) cannot access class com.sun.tools.javac.processing.JavacProcessingEnvironment (in module jdk.compiler) because module jdk.compiler does not export com.sun.tools.javac.processing to unnamed module @0x1667a6f7 -> [Help 1]
恳请各位提供解决该问题的指导或建议,非常感谢!
内容的提问来源于stack exchange,提问作者Nadeesha
相关产品推荐
相关产品推荐

