在之前的公司, 看到有用过代码扫描工具, 扫描C#代码, 最近公司也有考虑做这个,于是我便独自研究了一下,这里给大家做个分享

网上找了很多资料, 主要有以下问题:

1. Sonarqube用的是 旧版本,(现在更新到8.x版本,部分安装和使用, 和以前的旧版本有很大的区别)

2.介绍扫描java,php,pathon的,没有介绍扫描C#的

3.集成的是本地的服务,没有集成SqlServer数据库,以前的文档大多是集成MySql数据库

4."参考资料"大都发布于2019年之前的博客 那时候的版本,与现在的版 在实际使用过程中有很大的差别

1.下载和安装 sonarqube 和 sonar-scanner

https://www.cnblogs.com/weschen/p/5999874.html

https://www.cnblogs.com/danzhang/p/5205610.html

1.1)SonarQube  8+下载    http://www.sonarqube.org/downloads/

1.2)sonar-scanner 历史版本下载

https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/

1.3)java 1.8jdk

载和配置JDK http://www.oracle.com/technetwork/java/javase/downloads/java-se-jdk-7-download-432154.html

http://jdk.java.net/java-se-ri/11

2.配置sqlserver数据库

2.1)Jar包设置

参考 下面这个, SonarQube-7.9.1+SQL Server2017在Windows环境下的安装与配置

解包后, 我是放在本地文件夹 : C:\Program Files\Java\jre1.8.0_291\lib

然后连接数据库 , 参考 :   用JDBC连接SQL Server2017数据库

2.2)数据库设置

本地创建数据库 sonar , 用户名 sonar 密码 sonar ,并且给管理员权限

早sqlserver sonar 库中执行以下sql

ALTER DATABASE Sonar SET READ_COMMITTED_SNAPSHOT ON WITH ROLLBACK IMMEDIATE;

ALTER DATABASE Sonar COLLATE Chinese_PRC_CS_AS

2.3)本地数据库连接设置

设置  \conf\sonar.properties 数据库连接

sonar.jdbc.url=jdbc:sqlserver://localhost;databaseName=sonar

sonar.jdbc.username= sonar

sonar.jdbc.password= sonar

3.本地环境变量设置

注意, 有的地方有 分号 ";" 不同配置之间用  分号隔开.

系统环境变量

说明

SONAR_RUNNER_HOME

C:\sonar-scanner\sonar-scanner-4.6.0.2311

扫描器   客户端路径

;%SONAR_RUNNER_HOME%\bin

;C:\sonarqube\sonarqube-8.8.0.42792\bin;C:\sonarqube\sonarqube-8.8.0.42792\bin\windows-x86-64

扫描
  服务端路径

CLASSPATH

; D:\sqljdbc4\sqljdbc42.jar

连Sql数据库使用

Path

; C:\Program
Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\amd64

选择本地C#编译器

全局重要的配置在  C:\sonarqube\sonarqube-8.8.0.42792\conf\
sonar.properties

4.扫描设置

4.1   
扫描 C# 代码 (sln解决方案)

4.2   
扫描ts 代码

https://blog.csdn.net/liumiaocn/article/details/102670480/   2种方式

C#

ProjectManagerSolution

f973e7702707f26b9f14aa53a012dbe2da9d5961

LocalQD

7486a5f999c18d47063b7482721a3eb036e1a2cf

++===============================扫描C#========================++

SonarScanner.MSBuild.exe
begin /k:" XXXManager " /d:sonar.host.url="http://localhost:9000"
/d:sonar.login="f973e7702707f26b9f14aa53a012dbe2da9d5961"

MsBuild.exe
G:\历史资源\旧的资源1\XXXManager.sln /t:Rebuild

SonarScanner.MSBuild.exe
end /d:sonar.login="f973e7702707f26b9f14aa53a012dbe2da9d5961"

++===============================扫描C#=======================++

SonarScanner.MSBuild.exe
begin /k:"LocalProject" /d:sonar.login="e1b61fa834baff1d0249deddaba5887afcc00473"

msbuild.exe
E:\本地代码管理\LocalVSCode\2014Year\2014CSharp\Perfonsal\RegexFormTemplate\RegexFormTemplate.sln
/t:Rebuild

SonarScanner.MSBuild.exe end
/d:sonar.login="e1b61fa834baff1d0249deddaba5887afcc00473"

++==================================扫描ts=====================++

#参见本地文件
 I:\ImportCode_SJ\Client\ocal_xiang

sonar-scanner
-D.login=7486a5f999c18d47063b7482721a3eb036e1a2cf

需要在
该文件夹 安住shift 右键 ,在 powershell窗口 命令中打开 ,并且设置  “sonar-project.properties” 文件

文件内容格式为

C#代码扫描工具Sonarqube + Win10+SqlServer2017的更多相关文章

  1. 代码扫描利器sonarqube

    sonar的作用 1.代码质量和安全扫描和分析平台. 2.多维度分析代码:代码量.安全隐患.编写规范隐患.重复度.复杂度.代码增量.测试覆盖率等. 3.支持25+编程语言的代码扫描口分析,包含java ...

  2. 想做一个整合开源安全代码扫描工具的代码安全分析平台 - Android方向调研

    想做一个整合开源安全代码扫描工具的代码安全分析平台 - Android方向调研 http://blog.csdn.net/testing_is_believing/article/details/22 ...

  3. 静态代码扫描工具PMD定制xml的规则(一)操作篇

    0.前言 PMD作为开源的静态代码扫描工具有很强的扩展能力,可使用java或xpath定制rule.第一篇从操作上讲解如何定制一个用于扫描xml是否规范的规则.首先我们知道xml格式的文件在java工 ...

  4. Coverity代码扫描工具

    1.说明:Coverity代码扫描工具可以扫描java,C/C++等语言,可以和jenkins联动,不过就是要收钱,jenkins上的插件可以用,免费的,适用于小的java项目 2.这是Coverit ...

  5. Lint——Android SDK提供的静态代码扫描工具

    Lint和FindBugs一样,都是静态代码扫描工具,区别在于它是Android SDK提供的,会检查Android项目源文件的正确性.安全性.性能.可用性等潜在的bug并优化改进. 下图简单地描述了 ...

  6. eclipse 无用代码扫描工具UCDetector

    本文主要介绍UCDetector(无用代码扫描工具)使用方法及局限 对于沉积或多方接手开发的项目经常会遇到一坨一坨无用的代码,但一个一个类查找又相当费时,这里介绍一个eclipse插件扫描没有引用的类 ...

  7. 代码质量管理工具——SonarQube

    写在前面 SonarQube(简称Sonar)是管理代码质量的开放平台,它可以快速地对代码质量进行分析,并给出合理的解决方案,提高管理效率,保证代码质量. SonarQube的流行,在于以下几点: 开 ...

  8. 代码检查工具sonarqube介绍及使用

    亲测有效 环境:springboot+gradle+jdk1.8+sonarqube7.4 一.说明: SonarQube为静态代码检查工具,采用B/S架构,帮助检查代码缺陷,改善代码质量,提高开发速 ...

  9. Android 代码检查工具SonarQube

    http://blog.csdn.net/rain_butterfly/article/details/42170601 代码检查工具能帮我们检查一些隐藏的bug,代码检查工具中sonar是比较好的一 ...

  10. Findbug插件静态java代码扫描工具使用

    本文转自http://blog.csdn.net/gaofuqi/article/details/22679609 感谢作者 FindBugs 是由马里兰大学提供的一款开源 Java静态代码分析工具. ...

随机推荐

  1. 洛谷P1950 长方形(单调栈)

    一道单调栈的好题啊...... 思路是很奇妙的,对于每个点(i,j),我们可以算它对答案的贡献(即包含它的矩形数量),包含该点的矩形,点的高度为h[j],点右边的高度一定大于等于h[j],左边的高度一 ...

  2. Python编程之多进程(multiprocessing)详解

    引言 multiprocessing是一个用于产生多进程的包,与threading模块的API类似.multiprocessing既可以实现本地的多进程,也可以实现远程的多进程.通过使用多个子进程而非 ...

  3. ExceptionHandler配合RestControllerAdvice全局处理异常

    Java全局处理异常 引言 对于controller中的代码,为了保证其稳定性,我们总会对每一个controller中的代码进行try-catch,但是由于接口太多,try-catch会显得太冗杂,s ...

  4. JavaBean组件<jsp:forward>动作<jsp:param>动作登录页面输入用户名和密码,然后进入检查页面判断是否符合要求,符合要求跳转到成功界面,不符合要求返回登录界面,显示错误信息。

    JavaBean组件 JavaBean组件实际是一种java类.通过封装属性和方法成为具有某种功能或者处理某个业务的对象. 特点:1.实现代码的重复利用.2.容易编写和维护.3.jsp页面调用方便. ...

  5. 齐博x1再来个抛砖引玉 内容页根据关键词调用相关内容 新功能哦!

    昨天升级了一个隐藏的功能,今天就简单的做个说明怎么用,反正也不能浪费不是 那就用内容页面关键词读取相关内容为例吧. 前台是你模型中已经存在keywords字段  关键词支持 空格分割,号分割 那么就开 ...

  6. LcdToos如何实现PX01自动调Flicker及VCOM烧录

    准备工作: LcdTools+PX01点亮需调Flicker的屏:F118 Flicker探头,用于自动Flicker校准测量,F118连接PX01上电后,探头屏会提示零点校准,此时需盖住探头窗口再按 ...

  7. php注解使用示例

    今天看到php注解的介绍文章很感兴趣,动手实际试了试挺好玩,写这篇文章记录下 php从8开始支持原生注解功能了,我们可以写个小的例子看看注解怎么玩.   先确定我们的任务目标 1.编写一个注解类rou ...

  8. docker清空网络配置

    docker 网络 故障 相同的 ip 绑定给了 两个 网卡, 需要 清空 网络 ip addr | grep 10.79 inet 10.79.106.1/24 brd 10.79.106.255 ...

  9. Perl exists 函数和defined函数的区别

    Perl exists 函数和defined函数的区别

  10. hwlog--limiter.go

    // Copyright(C) 2021. Huawei Technologies Co.,Ltd. All rights reserved.// Package limiter implement ...