无法执行目标 org.sonarsource.scanner.maven:sonar-maven-plugin: 3.2:sonar
Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin: 3.2:sonar
任何人都可以帮助我解决以下错误。
以下是要配置的组件的版本
- SonarQube 5.1.2
- Soanr-Runner 2.4
- Java 1.7 [我只能使用 1.7,因为我的代码只支持 1.7]
- mavn 3.3.9
- sonar-cobertura-plugin-1.6.3
- sonar-findbugs-plugin-3.3
- cobertura 2.6
执行命令
mvn -fn -e org.sonarsource.scanner.maven:sonar-maven-plugin:RELEASE:sonar -Dsonar.jdbc.url="jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance" -Dsonar.host.url=http://localhost:9000 -DskipTests
在控制台中 Window 我收到错误
[ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:
3.2:sonar (default-cli) on project NWT_Core: Execution default-cli of goal org.s
onarsource.scanner.maven:sonar-maven-plugin:3.2:sonar failed: Unable to load the
mojo 'sonar' in the plugin 'org.sonarsource.scanner.maven:sonar-maven-plugin:3.
2' due to an API incompatibility: org.codehaus.plexus.component.repository.excep
tion.ComponentLookupException: org/sonarsource/scanner/maven/SonarQubeMojo : Unsupported major.minor version 52.0
从 3.2 开始,SonarQube maven 插件需要 Java8。
Java 7.
你必须使用 3.0.2 版本
您必须明确地将此语句添加到您的 pom 中:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>3.0.2</version>
</plugin>
因为如果你不这样做,默认情况下这个插件使用最新版本的插件 (3.2),因此你的错误。
无论您用什么编译您的代码,SonarQube 分析都应该是运行,具有特定的Java 版本.
您只需要为编译和分析.[=使用不同的JDK版本 10=]
- 为了 SonarQube 6.* 兼容性],确保 JAVA_HOME=/path/to/java8
- 为了 SonarQube 9.* 兼容性],确保 JAVA_HOME=/path/to/java11
在我的例子中,我有一个 parent pom 和
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.codehaus.sonar</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>2.5</version>
</plugin>
</plugins>
</pluginManagement>
</build>
我也在我的 child pom 中的 pluginManagement
中添加了我自己的版本,但这没有用我不得不将插件添加到 <build><plugins>
节点而不是 <build><pluginManagement><plugins>
。才用了新的更新版本。
也许这对某人有帮助。
近期在docker安装Sonorqube.5.12镜像,并将项目推送到Sonorqube中。最初我们遇到了一些 Maven 控制台错误,例如 major.minor version 52.0.
后来,我已经通过以下步骤修复了。
在maven中添加这个插件。
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>2.6</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
</plugin>
</plugins>
接下来,在 ~/.m2/settings.xml 文件中添加默认数据库设置
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<sonar.jdbc.url>jdbc:h2:tcp://localhost:9092/sonar</sonar.jdbc.url>
<sonar.host.url>http://localhost:9000</sonar.host.url>
<sonar.jdbc.username>sonar</sonar.jdbc.username>
<sonar.jdbc.password>sonar</sonar.jdbc.password>
<sonar.pdf.username>admin</sonar.pdf.username>
<sonar.pdf.password>admin</sonar.pdf.password>
</properties>
</profile>
任何人都可以帮助我解决以下错误。
以下是要配置的组件的版本
- SonarQube 5.1.2
- Soanr-Runner 2.4
- Java 1.7 [我只能使用 1.7,因为我的代码只支持 1.7]
- mavn 3.3.9
- sonar-cobertura-plugin-1.6.3
- sonar-findbugs-plugin-3.3
- cobertura 2.6
执行命令
mvn -fn -e org.sonarsource.scanner.maven:sonar-maven-plugin:RELEASE:sonar -Dsonar.jdbc.url="jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance" -Dsonar.host.url=http://localhost:9000 -DskipTests
在控制台中 Window 我收到错误
[ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:
3.2:sonar (default-cli) on project NWT_Core: Execution default-cli of goal org.s
onarsource.scanner.maven:sonar-maven-plugin:3.2:sonar failed: Unable to load the
mojo 'sonar' in the plugin 'org.sonarsource.scanner.maven:sonar-maven-plugin:3.
2' due to an API incompatibility: org.codehaus.plexus.component.repository.excep
tion.ComponentLookupException: org/sonarsource/scanner/maven/SonarQubeMojo : Unsupported major.minor version 52.0
从 3.2 开始,SonarQube maven 插件需要 Java8。 Java 7.
你必须使用 3.0.2 版本您必须明确地将此语句添加到您的 pom 中:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>3.0.2</version>
</plugin>
因为如果你不这样做,默认情况下这个插件使用最新版本的插件 (3.2),因此你的错误。
无论您用什么编译您的代码,SonarQube 分析都应该是运行,具有特定的Java 版本.
您只需要为编译和分析.[=使用不同的JDK版本 10=]
- 为了 SonarQube 6.* 兼容性],确保 JAVA_HOME=/path/to/java8
- 为了 SonarQube 9.* 兼容性],确保 JAVA_HOME=/path/to/java11
在我的例子中,我有一个 parent pom 和
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.codehaus.sonar</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>2.5</version>
</plugin>
</plugins>
</pluginManagement>
</build>
我也在我的 child pom 中的 pluginManagement
中添加了我自己的版本,但这没有用我不得不将插件添加到 <build><plugins>
节点而不是 <build><pluginManagement><plugins>
。才用了新的更新版本。
也许这对某人有帮助。
近期在docker安装Sonorqube.5.12镜像,并将项目推送到Sonorqube中。最初我们遇到了一些 Maven 控制台错误,例如 major.minor version 52.0.
后来,我已经通过以下步骤修复了。
在maven中添加这个插件。
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>2.6</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
</plugin>
</plugins>
接下来,在 ~/.m2/settings.xml 文件中添加默认数据库设置
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<sonar.jdbc.url>jdbc:h2:tcp://localhost:9092/sonar</sonar.jdbc.url>
<sonar.host.url>http://localhost:9000</sonar.host.url>
<sonar.jdbc.username>sonar</sonar.jdbc.username>
<sonar.jdbc.password>sonar</sonar.jdbc.password>
<sonar.pdf.username>admin</sonar.pdf.username>
<sonar.pdf.password>admin</sonar.pdf.password>
</properties>
</profile>