复杂一点的maven项目结构在jenkins中的sonarqube扫描配置

我的梦境 提交于 2019-12-29 14:43:48

一般的maven项目结构都是有一个parent和若干个子module,parent模块一般package属性是pom,子module一般为jar或war。但是对于在parent项目下还有包含有pom模块的情况可能会有点困惑,这里记叙一下这种情况的配置。

1.1 一般项目结构

pom{
    a模块,
    b模块
}

1.2 jenkins的sonarqube scan配置

sonar.projectKey=projectkey
sonar.projectName=projectname

sonar.modules=a,b

a.sonar.projectName=a
a.sonar.projectKey=a
a.sonar.sources=a/src/main/java
a.sonar.tests=a/src/test/java

...

b.sonar.projectName=b
b.sonar.projectKey=b
b.sonar.sources=b/src/main/java
b.sonar.tests=b/src/test/java

...

2.1 复杂项目结构

项目结构大致如下:

pom{
    a模块,
    b模块
    pom{
         model,
          service,
           dao
        }
}

2.2 jenkins的sonarqube scan配置

这里忽略掉pom模块下面的子pom模块就行,把service和dao模块也配置成最外成pom文件的子模块就行。注意不要把第二个pom也写一个sonar.projectKey这个是sonarqube扫描的唯一标识
sonar.projectKey=projectkey
sonar.projectName=projectname

sonar.modules=a,b,service,dao

...

a.sonar.projectName=a
a.sonar.projectKey=a
a.sonar.sources=a/src/main/java
a.sonar.tests=a/src/test/java

...

b.sonar.projectName=b
b.sonar.projectKey=b
b.sonar.sources=b/src/main/java
b.sonar.tests=b/src/test/java

...

model.sonar.projectName=model
model.sonar.projectKey=model
model.sonar.sources=model/src/main/java
model.sonar.tests=model/src/test/java

...
dao.sonar.projectName=dao
dao.sonar.projectKey=dao
dao.sonar.sources=dao/src/main/java
dao.sonar.tests=dao/src/test/java

 

...

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!