2011-12-13 54 views
12

我試圖運行聲納運行者來一次性分析多個Java項目。根據documentation,只需爲每個項目創建一個sonar-project.properties文件即可。但是我不清楚在哪裏我必須放置這些sonar-project.properties文件。多個Java項目的安裝聲納跑步者

我試圖在$SONAR_RUNNER_HOME/conf文件夾中添加多個.properties文件,但跑步者似乎沒有選擇它們。它只能看到sonar-project.properties文件。

關於如何爲多個項目運行聲納運行器的任何建議?

回答

11

聲納轉輪支持多個模塊的項目。它不支持在一次調用中分析多個項目。

需要針對每個項目運行Java runner,並在每個項目目錄中選取屬性文件。

0

2.0以來,聲納亞軍可與多個模塊,如所描述here

+1

這個問題是關於**多個項目**而不是**多個模塊**在同一個項目中。你是否說過你提到的鏈接也適用於多個java項目。 Mark O'Connor在他的回答中提到,它不支持在一次調用中分析多個項目。 –

+0

首先,鏈接是死的,但其次,看起來像項目與模塊定義是從聲納亞軍的角度來看...在這種情況下,您可以定義一個項目並傳遞不同的源目錄,這將包括不同項目的來源,所以只要他們可以從您的文件系統訪問。這將爲您在一個聲納項目分析中提供多個Java項目的「項目」快照。 – sloven

11

其實這是很簡單的讓聲納亞軍分析多個項目,只要它們是在同一個文件系統。只需將一個屬性文件放在一個遠離項目的目錄中即可。然後在此屬性文件中聲明每個項目。假設您在dev/general/BasicStuff,dev/service/CoolStuff,dev/utility/UtilStuff和dev/display/FrameWorkStuff中有4個項目。

正如here路#2描述您創建包含行

sonar.modules=BasicStuff,CoolStuff,UtilStuff,FrameWorkStuff 

併爲每個「模塊」像

BasicStuff.sonar.projectBaseDir=general/BasicStuff 
CoolStuff.sonar.projectBaseDir=service/CoolStuff 

裏面的項目目錄線dev目錄下的文件你又創建一個包含其他所需信息的文件,例如

sonar.projectName=BasicStuff 
sonar.sources=src 

如果你開始與頂級性能目標你會得到一個全面的結果,顯示在整個項目指標,以及讓你深入到每個人的聲納亞軍。

希望這是你在找的。

+0

令人難以置信的有用。我調整了它與Jenkins/Sonar構建一起工作,並節省了大量時間。只需要創建一個構建作業而不是11個。 – Michael