Java sonar/jacoco插件因API不兼容而失败

Java sonar/jacoco插件因API不兼容而失败,java,maven,sonarqube,Java,Maven,Sonarqube,我们已使用sonar/jacoco进行代码覆盖,其中一个代码已停止工作,错误消息为: 无法执行目标org.sonarsource.scanner.maven:sonar maven插件:3.2:sonar(默认cli)在prism项目父级pom上:执行目标org.sonarsource.scanner.maven:sonar maven插件的默认cli:3.2:sonar失败:无法在插件“org.sonarsource.scanner.maven:sonar maven插件:3.2”中加载moj

我们已使用sonar/jacoco进行代码覆盖,其中一个代码已停止工作,错误消息为:

无法执行目标org.sonarsource.scanner.maven:sonar maven插件:3.2:sonar(默认cli)在prism项目父级pom上:执行目标org.sonarsource.scanner.maven:sonar maven插件的默认cli:3.2:sonar失败:无法在插件“org.sonarsource.scanner.maven:sonar maven插件:3.2”中加载mojo“sonar”,因为API不兼容:org.codehaus.plexus.component.repository.exception.ComponentLookupException:org/sonarsource/scanner/maven/SonarQubeMojo:不支持的major.minor版本52.0

在痛苦地比较了前后日志之后,我发现sonar maven插件从3.0.2版更改为3.2版,尽管pom文件没有更改

我还运行了“mvn dependency:tree”,没有看到sonar的任何依赖性

上一次我更新了pom以指定sonar maven插件版本,以强制它使用以前工作的版本,但仍然没有帮助,这是我的父pom

<profiles>
  <profile>
      <id>coverage-per-test</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>sonar-maven-plugin</artifactId>
            <version>3.0.2</version>
          </plugin>
          <plugin>
            <groupId>org.jacoco</groupId>
            <artifactId>jacoco-maven-plugin</artifactId>
            <version>0.7.4.201502262128</version>
            <executions>
              <execution>
                <id>default-prepare-agent</id>
                <goals>
                  <goal>prepare-agent</goal>
                </goals>
              </execution>
              <execution>
                <id>default-prepare-agent-integration</id>
                <phase>pre-integration-test</phase>
                <goals>
                  <goal>prepare-agent-integration</goal>
                  <goal>prepare-agent</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
              <properties>
                <property>
                  <name>listener</name>
                  <value>org.sonar.java.jacoco.JUnitListener</value>
                </property>
              </properties>
            </configuration>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-failsafe-plugin</artifactId>
            <configuration>
              <properties>
                <property>
                  <name>listener</name>
                  <value>org.sonar.java.jacoco.JUnitListener</value>
                </property>
              </properties>
            </configuration>
          </plugin>
        </plugins>
      </build>
      <dependencies>
        <dependency>
          <groupId>org.codehaus.sonar-plugins.java</groupId>
          <artifactId>sonar-jacoco-listeners</artifactId>
          <version>2.7</version>
          <scope>test</scope>
        </dependency>
      </dependencies>
    </profile>
    </profiles>

每次测试的覆盖率
org.codehaus.mojo
声纳maven插件
3.0.2
org.jacoco
jacocomaven插件
0.7.4.201502262128
默认准备代理
配制剂
默认准备代理集成
预集成测试
准备代理集成
配制剂
org.apache.maven.plugins
maven surefire插件
听众
org.sonar.java.jacoco.JUnitListener
org.apache.maven.plugins
maven故障保护插件
听众
org.sonar.java.jacoco.JUnitListener
org.codehaus.sonar-plugins.java
声纳jacoco监听器
2.7
测试
我的pom有什么问题吗

在Java中导致

不受支持的主要版本52.0

所用JVM的版本低于编译类文件的版本。“52.0”指的是Java8,这个版本确实是。总而言之,我非常确定SonarQube服务器已经升级,而您使用的Java低于8。

在Java中,由于

不受支持的主要版本52.0

所用JVM的版本低于编译类文件的版本。“52.0”指的是Java8,这个版本确实是。总而言之,我非常确定SonarQube服务器已经升级,而您使用的Java低于8