BlueXIII's Blog

热爱技术,持续学习

0%

研发规约-Sonar代码检测

Sonar地址

http://localhost:9000

admin/admin
暂定localhost,后期根据部署情况修改

本机Maven配置

配置~/.m2/settings.xml

1
2
3
4
5
6
7
8
9
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<sonar.host.url>http://localhost:9000</sonar.host.url>
</properties>
</profile>

为工程添加Jacoco插件

配置工程的pom.xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<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选项关闭:

1
2
3
4
5
6
7
8
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.10</version>
<!-- <configuration> -->
<!-- <skipTests>true</skipTests> -->
<!-- </configuration> -->
</plugin>

代码手工上传Sonar

1
mvn clean verify sonar:sonar

Sonar代码检查结果

上传Sonar后,会生成代码质量检查报告
2020-02-07-19-34-54

点击链接即可查看
2020-02-07-19-44-56

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