簡體   English   中英

如何在使用sonar:sonar構建Maven項目中解決插件容器異常?

[英]How to resolve Plugin Container Exception in building maven project with sonar:sonar?

在sonarqube 7.4的擴展文件夾中添加自定義插件jar之后,我試圖使用干凈的sonar:sonar包構建一個示例項目。 但是每次它都給出這個PluginContainerException。 該錯誤在下面共享:

[ERROR] Failed to execute goal
org.sonarsource.scanner.maven:sonar-maven-plugin:3.5.0.1254:sonar
(default-cli) on project testsonar: Execution default-cli of goal
org.sonarsource.scanner.maven:sonar-maven-plugin:3.5.0.1254:sonar
failed: A required class was missing while executing
org.sonarsource.scanner.maven:sonar-maven-plugin:3.5.0.1254:sonar:
org/sonar/java/model/PackageUtils [ERROR]
----------------------------------------------------- 
[ERROR] realm = plugin>org.codehaus.mojo:sonar-maven-plugin:3.5.0.1254 [ERROR]
strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
[ERROR] urls[0] =
file:/C:/Users/chakrabok/.m2/repository/org/sonarsource/scanner/maven/sonar-maven-plugin/3.5.0.1254/sonar-maven-plugin-3.5.0.1254.jar
[ERROR] urls[1] =
file:/C:/Users/chakrabok/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.4/plexus-sec-dispatcher-1.4.jar
[ERROR] urls[2] =
file:/C:/Users/chakrabok/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar
[ERROR] urls[3] =
file:/C:/Users/chakrabok/.m2/repository/org/codehaus/plexus/plexus-utils/3.0.22/plexus-utils-3.0.22.jar
[ERROR] urls[4] =
file:/C:/Users/chakrabok/.m2/repository/org/sonarsource/scanner/api/sonar-scanner-api/2.10.0.1189/sonar-scanner-api-2.10.0.1189.jar
[ERROR] urls[5] =
file:/C:/Users/chakrabok/.m2/repository/commons-lang/commons-lang/2.6/commons-lang-2.6.jar
[ERROR] Number of foreign imports: 1 [ERROR] import: Entry[import 
from realm ClassRealm[maven.api, parent: null]] [ERROR]  [ERROR]
-----------------------------------------------------:org.sonar.java.model.PackageUtils

請告訴我應該怎么做?

您可以使用以下任何一種解決方案來解決此問題:

  1. Sonarqube Web控制台中停用“安全性注釋強制”規則。

  2. 在項目的pom.xml中添加以下依賴項:

    <dependencies> ... <dependency> <groupId>org.sonarsource.java</groupId> <artifactId>java-squid</artifactId> <version>3.11</version> </dependency> </dependencies>

    確保在pom.xml中添加依賴項之后,已經編譯了項目( mvn clean install ),然后將jar文件復制到<sonarqube_dir> / extensions / plugins /目錄中,最后重新啟動sonarqube服務器。

PS org.sonar.java.model.PackageUtils類是由SecurityAnnotationMandatoryRule導入的,其依賴項需要添加到pom.xml中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM