2013-07-29 63 views
7

我已閱讀有關排除的文檔,嘗試了幾種組合,但Sonar仍在分析它不應該使用的代碼。以下是我sonar-runner.properties文件的樣本:聲吶排除不妨礙分析C#代碼

#----- Required metadata 
sonar.projectKey=ProjectKey 
sonar.projectName=ProjectName 
sonar.projectVersion=1.0 
sonar.sources=MySourceFolder 
sonar.build-stability.url=- 
sonar.language=cs 
sonar.dotnet.visualstudio.solution.file=MySourceFolder\\Solution.sln 
sonar.donet.visualstudio.testProjectPattern=*.Tests* 

#----- Default source code encoding 
sonar.sourceEncoding=UTF-8 

#----- Default Sonar server 
sonar.host.url=http://myserver 

#----- MySQL 
sonar.jdbc.url=jdbc:mysql://myserver:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true 
sonar.jdbc.driver=com.mysql.jdbc.Driver 

#----- Global database settings 
sonar.jdbc.username=sonar 
sonar.jdbc.password=sonar 

#----- Static analysis 
sonar.fxcop.installDirectory=C:/Program Files (x86)/Microsoft Fxcop 10.0 

最後的選擇我所用的是配置通過聲納UI的排除(項目設置>排除>源文件排除),並設置類似的值以下:

MySourceFolder/FolderA/FolderB/*.cs 

在日誌我看到以下消息:

[17:27:10][Step 7/9] 17:27:10.919 INFO - Excluded sources: 
[17:27:10][Step 7/9] 17:27:10.919 INFO - MySourceFolder/FolderA/FolderB/*.cs 

儘管如此,i被被分析的代碼,因爲它出現在聲納的侵犯和複製插件信息。

任何想法可能會導致此行爲或如何正確配置排除C#文件?

非常感謝!

裏卡多

回答

4

由於在SonarQube analysis parameters page規定,到指定排除的屬性爲 「sonar.exclusions」。

那麼這裏就是你可以在「sonar-project.properties」文件規定:

sonar.exclusions=FolderA/FolderB/*.cs 
+0

我有同樣的問題,當使用'sonar.sources = js sonar.exclusions = js/blah/**'我可以在Jenkins日誌中看到「Excluded sources」,但隨後在blah中的文件目錄顯示在分析中。任何提示?我還通過SonarQube GUI(project-configuration-settings-exclusions)添加了排除,但結果相同。 – Stephan

+2

實際上,在另一個嘗試使用語法'file:**/blah/**'後對我有用。對於那個很抱歉! :) – Stephan

1

其實,對我來說它的工作相反。
sonar.exclusion未從分析中排除文件,但通過Sonar GUI將文件名添加到排除列表中工作正常。
我用它進行JavaScript分析。