2014-01-09 99 views
1

執行mvn sonar:sonar時確切的maven生命週期階段是什麼?mvn聲納:聲納做什麼?

雖然我看到在屏幕上運行的日誌,在我發現的非常高的級別test, install

考慮下面的例子,

我有一個像下面

maven-root 

maven-child-1 

maven-child-2 

Maven項目考慮以下情形,我已經在根級別seqentially做他們

  1. mvn clean install
  2. mvn sonar:sonar - 查看報告
  3. 修改兒童2通過添加一些測試用例來提高代碼覆蓋率
  4. 運行mvn sonar:sonar

我對測試用例的變化在報告中沒有反映。

  1. 我從聲納QUBE
  2. mvn sonar:sonar

還是產生了我的舊報告中刪除報告。

簡而言之,我需要執行mvn clean install然後mvn sonar:sonar

如果mvn sonar:sonar涵蓋執行mvn clean install,爲什麼報告給我舊數字?

幫我理解它背後的過程... 謝謝!!

+0

http://docs.codehaus.org/display/SONAR/Analyzing+with+Maven – dm78

+0

感謝@DavidMays,它說「如果可能的話,安裝目標應在聲納之前執行:聲納之一」。我不明白如果不可能......任何想法.. – VinayVeluri

回答

3

mvn sonar:sonar不會觸發mvn clean install執行。它僅觸發Maven Surefire插件執行。

這就是爲什麼您需要在每次分析前執行mvn clean install - 否則您編譯的類不會是最新的,因此Surefire執行不會包含最近的修改。