Technical note
研发规约-Sonar代码检测
Sonar地址
admin/admin
暂定localhost,后期根据部署情况修改
本机Maven配置
配置~/.m2/settings.xml
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<sonar.host.url>http://localhost:9000</sonar.host.url>
</properties>
</profile>
为工程添加Jacoco插件
配置工程的pom.xml
<project>
<build>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.7.7.201606060606</version>
<executions>
<execution>
<id>default-prepare-agent</id>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
注意将surefire插件的skipTests选项关闭:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.10</version>
<!-- <configuration> -->
<!-- <skipTests>true</skipTests> -->
<!-- </configuration> -->
</plugin>
代码手工上传Sonar
mvn clean verify sonar:sonar
Sonar代码检查结果
上传Sonar后,会生成代码质量检查报告

点击链接即可查看

页面中会展示代码的BUG、漏洞、单元测试覆盖率、代码重复率等信息,可点击进入详情页面,Sonar会给出详细的修改建议,根据提示修改代码。
