sonar-maven-plugin 不同的结果
sonar-maven-plugin different results
我在本地机器上使用 sonar-maven-plugin(SonarQube 版本:5.6.6):
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>2.6</version>
</plugin>
并且我已经使用 jenkins 在远程构建服务器上配置了声纳:
Maven 任务:
$SONAR_MAVEN_GOAL -Dsonar.host.url=$SONAR_HOST_URL clean package
在控制台输出中我看到:
[INFO] --- sonar-maven-plugin:2.6:sonar (default-cli)
INFO: SonarQube Server 5.6.6
但是我得到了不同的结果(我在本地机器上使用相同的代码有更多的错误和代码味道)
Maven 任务按照它们在命令行中指定的顺序执行,并且您在构建之前执行分析。
SonarJava 需要字节码来执行完整的分析。如果您不向分析提供 class 文件,那么您 将 得到更少的问题。
因此假设其他进程在分析之间清除了部分或全部 class 文件,这就是问题的根源。相反,在您的 Jenkins Maven 构建步骤中尝试这样做:
clean package $SONAR_MAVEN_GOAL -Dsonar.host.url=$SONAR_HOST_URL
或作为单独的步骤
clean package
$SONAR_MAVEN_GOAL -Dsonar.host.url=$SONAR_HOST_URL
我在本地机器上使用 sonar-maven-plugin(SonarQube 版本:5.6.6):
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>2.6</version>
</plugin>
并且我已经使用 jenkins 在远程构建服务器上配置了声纳:
Maven 任务:
$SONAR_MAVEN_GOAL -Dsonar.host.url=$SONAR_HOST_URL clean package
在控制台输出中我看到:
[INFO] --- sonar-maven-plugin:2.6:sonar (default-cli)
INFO: SonarQube Server 5.6.6
但是我得到了不同的结果(我在本地机器上使用相同的代码有更多的错误和代码味道)
Maven 任务按照它们在命令行中指定的顺序执行,并且您在构建之前执行分析。
SonarJava 需要字节码来执行完整的分析。如果您不向分析提供 class 文件,那么您 将 得到更少的问题。
因此假设其他进程在分析之间清除了部分或全部 class 文件,这就是问题的根源。相反,在您的 Jenkins Maven 构建步骤中尝试这样做:
clean package $SONAR_MAVEN_GOAL -Dsonar.host.url=$SONAR_HOST_URL
或作为单独的步骤
clean package
$SONAR_MAVEN_GOAL -Dsonar.host.url=$SONAR_HOST_URL