用sonar扫描maven的多模块项目

本来想借助mvn sonar:sonar执行代码分析,但是因为父工程没有class文件,总是缺少相应的依赖;顾只能改用sonar-scanner进行。具体实施如下:

1.maven多模块工程如图所示:

用sonar扫描maven的多模块项目_第1张图片

我们可以看到此时multi-boluome工程下有dao、domain、service、web四个模块项目,且每一个都有其独立的pom.xml文件;

2.因为借助sonar-scanner分析工程,前提是此工程必须有class文件,此时我们若只想解析service下的代码。就应该先执行mvn clean compile(编译)叫工程生成对应的class文件;

D:\workspaceone\multi-boluome-master\multi-boluome-master>mvn clean compile

cd到父工程根目录下编译工程;

此时我们进入到子工程service;

用sonar扫描maven的多模块项目_第2张图片

3.接下来我们在service工程的pom.xml文件所在的目录层,新增一个sonar-project.properties文件:

用sonar扫描maven的多模块项目_第3张图片

具体配置内容如下:

sonar.projectKey=Juzai
sonar.projectName=multi-service
sonar.projectVersion=1.1
sonar.ce.workerCount=1
sonar.language=java
sonar.sources=src
sonar.java.binaries=target/classes
sonar.ce.javaOpts=-Xmx2560m -Xms853m -XX:+HeapDumpOnOutOfMemoryError 
sonar.ce.workerCount=1

 

5.最后cmd到工程的sonar-project.properties文件所在的目录下,执行sonar-scanner,即可分析成功;

D:\workspaceone\multi-boluome-master\multi-boluome-master\service>sonar-scanner

 

你可能感兴趣的:(用sonar扫描maven的多模块项目)