複雜一點的maven項目結構在jenkins中的sonarqube掃描配置

一般的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

 

...

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章