以下修改都是基于工程pom.xml的修改,即工程结构为父子模块嵌套,无论执行扫描的是父工程下的所有子模块还是其中某一个子模块,sonar的相关配置都是位于父工程的pom.xml中。
1.添加maven插件
<plugin> <groupId>org.sonarsource.scanner.maven</groupId> <artifactId>sonar-maven-plugin</artifactId> <version>3.7.0.1746</version> </plugin> <plugin> <groupId>org.jacoco</groupId> <artifactId>jacoco-maven-plugin</artifactId> <version>0.8.5</version> <executions> <execution> <goals> <goal>prepare-agent</goal> </goals> </execution> <!-- attached to Maven test phase --> <execution> <id>report</id> <phase>package</phase> <goals> <goal>report</goal> </goals> </execution> </executions> </plugin>
2.配置sonar属性
<properties> <sonar.host.url>http://127.0.0.1:9000</sonar.host.url> <sonar.login>username</sonar.login> <sonar.password>password</sonar.password> </properties>
3.执行sonar扫描
mvn clean package -Dmaven.test.skip=true org.sonarsource.scanner.maven:sonar-maven-plugin:3.7.0.1746:sonar
4.查看结果: 登录SonarQube地址http:127.0.0.1:9000/查看扫描结果