从命令行运行声纳分析时出现链接错误(maven 项目)

Posted

技术标签:

【中文标题】从命令行运行声纳分析时出现链接错误(maven 项目)【英文标题】:Linkage Error on running sonar analysis from command line (maven project) 【发布时间】:2020-10-04 13:00:23 【问题描述】:

我正在尝试使用远程声纳服务器为我的 Maven 项目运行声纳分析。 PFB 的声纳版本和我尝试使用的 java:

Maven Sonar Plugin : 3.5.0.1254
Java version : 1.7 and 1.8 (tried both)
SonarQube version: 8.3.0

这是我得到的错误。我尝试将 java 的版本更新到 1.8,但我仍然面临一个问题 错误:

[ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.5.0.1254:sonar  on project <project_name>: Execution default-cli of goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.5.0.1254:so
nar failed: An API incompatibility was encountered while executing org.sonarsource.scanner.maven:sonar-maven-plugin:3.5.0.1254:sonar: java.lang.BootstrapMethodError: java.lang.LinkageError: loading constraint violation when overriding method "okhttp3/EventListener$Factory.create(Lokhttp3/Call;)Lokhttp3/EventListener;" during creation of class "okhttp3/EventListener$$Lambda$123/000000000FBD1C60": loader "java/lang/InternalAnonymousClassL
oader@63d13f09" of class "okhttp3/EventListener$$Lambda$123/000000000FBD1C60" and loader "org/sonar/classloader/ClassRealm@eaecd3ff" of class "okhttp3/EventListener$Factory" have different types for the method signature

在任何地方都找不到任何有效的参考资料。有人可以帮忙吗?

【问题讨论】:

使用更新版本的 sonar-maven-plugin search.maven.org/artifact/org.sonarsource.scanner.maven/… @khmarbaise :我尝试升级到 3.7.0.1746,但仍然面临同样的问题。感谢您的建议。 你使用哪个 Maven 版本? @khmarbaise:我使用的是 Maven 3.3.9 我正在使用 gradle 项目,我也面临同样的错误。 SonarQube 版本 7.9.4。梯度 4.10。 Java 8 【参考方案1】:

我有类似的问题,我发现问题是因为我使用的是 IBM jdk8。所以我也在环境变量 JAVA_HOME 中改变了它 openjdk8 。现在可以正常使用了。

【讨论】:

以上是关于从命令行运行声纳分析时出现链接错误(maven 项目)的主要内容,如果未能解决你的问题,请参考以下文章

编译 mex 文件时出现链接错误

下载一个 Maven 依赖项时出现问题

MyEclipse中Maven项目运行maven install命令时出现错误怎么办?

找不到 MySQL - 尝试从命令行访问 MySQL 时出现“找不到命令”错误

为啥我在运行 maven install 时出现“包不存在”错误?

当我尝试使用最新的依赖项构建 Maven 空手道项目时出现编译错误