2012-05-22 43 views
0

我已經設置了與MySQL數據庫的Sonar。我的項目是一個多模塊eclipse項目,這意味着它有多個插件。 我使用Maven建立了一個Jenkins版本來構建這個項目,並且還安裝了Jenkins Sonar插件來分析聲納代碼。 所有配置似乎都是正確的。然而,當聲納試圖在構建之後分析這個項目時,它會抱怨重複的源代碼並且構建失敗。 每個eclipse插件都有Activator.java類和Sonar抱怨這是重複的。我已經從分析中排除了這個類,但Sonar抱怨某個特定插件中的類被添加爲其他插件的依賴項。 代碼的不完整分析會導致Sonar中該項目的其他問題。就像,即使項目在Sonar儀表板中可見,即使我以管理員身份登錄,它也會在點擊項目時再次要求驗證。Jenkins Sonar插件在分析過程中拋出重複的源文件錯誤

任何關於將我指向正確方向的信息都會非常有幫助。

請讓我知道是否需要額外的輸入來更好地理解我的問題。

回答

0

我能夠通過刪除父pom.xml中的測試標記來解決此問題。這不知何故導致聲納拋出重複的源錯誤。找出根本原因是一項單調乏味的工作,我必須從頭開始重新構建pom.xml,逐節添加。

感謝所有的幫助。

+0

你是什麼意思的「測試」標籤?我也有maven-compiler-plugin 3.3的「重複類」錯誤,但只有在使用聲納進行構建時。請給我更多關於這個「測試」標籤的細節。 –

2

IMO,您可以遵循的最佳示例是我們的Sonar Eclipse項目:https://github.com/SonarSource/sonar-eclipse。這也是一個多模塊的Eclipse項目。

在這個例子中,你想看看父模塊(https://github.com/SonarSource/sonar-eclipse/tree/master/org.sonar.ide.eclipse.parent)哪個目標是隻定義父POM。幾乎一切都發生在那裏。

我想你應該找到自己的方式得益於此。

+0

謝謝Fabrice。我絕對認爲你正在指引我走向正確的方向。我沒有完全得到關於只有一個Sonar項目的第一個問題。如上所述,我使用Maven構建我的項目,並且我有一個根pom.xml,它是所有模塊的父項,我有一個pom.xml,列出了擴展根pom.xml的所有模塊。我將這個pom.xml作爲Jenkins構建作業的聲納配置中的root pom。您能否介紹一下Sonar模塊的定義。作爲例子會讓我思考正確的方向。 – ezcode

+0

我編輯了我的答案,使事情更清晰:-)(希望) –

相關問題