zoukankan      html  css  js  c++  java
  • 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不认,所以只能在这里重新设置。

  • 相关阅读:
    使用MySQL存储过程连续插入多条记录
    为什么编程语言以及数据库要从1970年1月1日开始计算时
    关于shtml页面include问题解决方案
    简单实用的FTP操作类
    js实现完美身份证号有效性验证
    .htaccess文件的建立和rewrite_module的启用
    php冒泡排序
    php实现汉诺塔问题(递归)
    简单的mysql数据库备份程序
    选择排序的php实现
  • 原文地址:https://www.cnblogs.com/hankuikui/p/5780137.html
Copyright © 2011-2022 走看看