SonarQube 項目配置文件


費話不說,直接上代碼:

需要注意的地方:

1. 每個項目的key不能重復。

2. 注意編碼方式。

3. 注意分模塊的寫法。

4. 忽略源碼文件的寫法。

 

# Required metadata
sonar.projectKey=EG:Fm
sonar.projectName=Fm
sonar.projectVersion=1.0
sonar.sourceEncoding=UTF-8

sonar.modules=csharp-module,javascript-module

# csharp-module 
csharp-module.sonar.projectName=Csharp Module
csharp-module.sonar.language=cs
csharp-module.sonar.sources=.
csharp-module.sonar.exclusions=**/obj/**/*
csharp-module.sonar.projectBaseDir=.


# javascript-module
javascript-module.sonar.projectName=JavaScript Module
javascript-module.sonar.language=js
javascript-module.sonar.sources=.
javascript-module.sonar.exclusions=**/lib/**/*,**/node_modules/**/*
javascript-module.sonar.projectBaseDir=.

 

以上配置文件在分析.net framework時沒有問題,但分析.net core時,發現不能分析cs代碼,在網上看到有博友說是sonarc#插件版本的問題,我也更新到最新版了,還是不行。

后來就用了新的dotnet-sonarscanner做代碼分析,才可以分析.net core的代碼。記錄如下:

首先安裝dotnet-sonarscanner: 這里的dotnet tool是隨着.net core 2.1版本安裝的,相當於npm的功能。

dotnet tool install --global dotnet-sonarscanner --version 4.3.1

其次在項目目錄下運行命令:

sh "export PATH=$PATH:/root/.dotnet/tools && export DOTNET_ROOT=/usr/local/dotnet && cd ${projectDir}/ && /usr/local/bin/dotnet sonarscanner begin /k:'FutureMr' /d:sonar.host.url='http://10.117.150.41:39900' /d:sonar.login='d750699187a51815f44523d704d9afe7084aa96d' /d:sonar.exclusions='**/build/**/*,**/bin/**/*,**/obj/**/*,**/lib/**/*,**/node_modules/**/*,**/media/**/*,**/FmContent/**/*,**/css/**/*,**/images/**/*,**/Template/**/*'"
sh 'cd ${projectDir}/ && /usr/local/bin/dotnet build'
sh 'export PATH=$PATH:/root/.dotnet/tools && export DOTNET_ROOT=/usr/local/dotnet && cd ${projectDir}/ && /usr/local/bin/dotnet sonarscanner end /d:sonar.login="d750699187a51815f44523d704d9afe7084aa96d"'

我是在Jenkins的pipleline中運行的,由於pipeline中總是提示: 

No executable found matching command "dotnet-sonarscanner"

但是我們的path環境變量已經設置了,但jenkins不認,所以只能在這里重新設置。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM