代码检查工具 Sonar 安装&使用
本文主要说明Sonar的安装方式并附上依赖安装包,本文目标只实现本地搭建测试的Sonar环境,以及本地的测试项目的非定制化扫描
本机测试环境:Win10-X64,.vs2017
依赖包:
1.SDK Java的东东
2.sonarqube 静态代码检查工具,B/S
3.sonar-scanner-msbuild 真正的代码扫面工具
Soanr的代码检测的实现机制,就是通过客户端的工具对代码进行扫描,然后发送到 sonarqube,然后进行结果报告查看
开始安装:
1.首先安装SDK,安装完成之后,配置相应的path环境变量,打开cmd输入java,如下图代表安装成功:

2.安装Sonar
下载Sonar ,下载地址 :https://www.sonarqube.org/downloads/

解压下载包之后,执行 bin\windows-x86-64\StartSonar.bat

如上图,代表启动成功,浏览器输入:http://localhost:9000/ 即可访问,已经默认内置了管理员账号:admin / admin

3.配置中文包
如何打开配置中文包呢?

安装之后需要重启才能生效

如何强制停止sonar服务呢? 打开任务管理器,关闭 Java进程

4.安装包 sonar-scanner-msbuilld
canner包就是真正进行代码扫面的工具包
下载后解压至任意目录即可,这里直接放到了c:\sonar
开始使用
1.新建项目
填写项目的关键信息即可,选择项目开发语言


2.扫描项目三部曲
这里的三步曲就是sonar新建项目中的最后步骤的扫描教程,分为三步
1.配置环境变量,也就是下载的Sonar-Canner-Msbuild 中 SonarScanner.MSBuild.exe的位置
2.进行项目解决方案所在的目录,也就是 sln 文件所在目录,打开cmd命令 执行如下命令,下面的命令是根据创建项目时生成的需要复制出来
a.SonarScanner.MSBuild.exe begin /k:"Mytest" /d:sonar.host.url="http://localhost:9000" /d:sonar.login="d8fb95b33c46b1a755e9f93ca0ee62e7bb36591b"
b.MsBuild.exe /t:Rebuild
c.SonarScanner.MSBuild.exe end /d:sonar.login="d8fb95b33c46b1a755e9f93ca0ee62e7bb36591b"
执行效果如下:
如果MsBuild.exe /t:Rebuild 报错,需要解决项目中的问题,这是编译报错,下图为编译成功,且报告已经上传到SonarQube ,可以到 http://localhost:9000 查看具体报告


3.查看项目扫描报告
查看报告

这里提供一个批处理,配合上述的放入c:\sonar,使用如下命令即可一部完成代码分析并上报, 新建sonar.bat文件,copy如下命令,将soanr.bat放入项目sln目录中,双击运行即可
echo off c:\sonar\SonarScanner.MSBuild.exe begin /k:"项目名称需要替换" /d:sonar.host.url="http://localhost:9000" /d:sonar.login="项目Key,创建项目时生成,需要复制"
::编译代码
set "msbuildPath="
set "msbuildPath14=%ProgramFiles(x86)%\MSBuild\14.0\Bin\MSBuild.exe"
set "msbuildPath15=%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\msbuild.exe"
if exist "%msbuildPath14%" set "msbuildPath=%msbuildPath14%"
if exist "%msbuildPath15%" set "msbuildPath=%msbuildPath15%"
if "%msbuildPath%" == "" goto nomsbuild
"%msbuildPath%" /t:Rebuild c:\sonar\SonarScanner.MSBuild.exe end /d:sonar.login="d8fb95b33c46b1a755e9f93ca0ee62e7bb36591b" echo 扫描完成
pause :nomsbuild
echo 没有找到MSBUILD
pause :exit
代码检查工具 Sonar 安装&使用的更多相关文章
- 基于Source Insight_Scan的C/C++静态代码检查工具安装说明
基于Source Insight_Scan的C/C++静态代码检查工具安装说明 本文链接:https://blog.csdn.net/M19930517/article/details/79977 ...
- Android 代码检查工具SonarQube
http://blog.csdn.net/rain_butterfly/article/details/42170601 代码检查工具能帮我们检查一些隐藏的bug,代码检查工具中sonar是比较好的一 ...
- 代码质量管理工具 sonar 配置
代码检查工具有很多findBugs等等 sonar配置: 1.下载sonar 5.5, 解压,运行 sonarqube-5.5\bin\windows-x86-64\StartSonar.bat , ...
- 【FLYabroad 】微软内部代码检查工具 (Microsoft Source Analysis for C#)[转]
SourceAnalysis (StyleCop)的终极目标是让所有人都能写出优雅和一致的代码,因此这些代码具有很高的可读性. 早就听说了微软内部的静态代码检查和代码强制格式美化工具 StyleCop ...
- 静态代码检查工具 cppcheck 的使用
CppCheck是一个C/C++代码缺陷静态检查工具.不同于C/C++编译器及其它分析工具,CppCheck只检查编译器检查不出来的bug,不检查语法错误.所谓静态代码检查就是使用一个工具检查我们 ...
- 静态代码检查工具 cppcheck 的使用(可分别集成到VS和QT Creator里)
CppCheck是一个C/C++代码缺陷静态检查工具.不同于C/C++编译器及其它分析工具,CppCheck只检查编译器检查不出来的bug,不检查语法错误.所谓静态代码检查就是使用一个工具检查我们写的 ...
- 代码静态分析工具PC-LINT安装配置
代码静态分析工具PC-LINT安装配置--step by step 作者:ehui928 ...
- 代码检查工具jshint和csslint
前面的话 Douglas Crockford大神根据自己的理念用JavaScript写了一个JavaScript代码规范检查工具,这就是JSLint.后来非常流行,也的确帮助了广大的JavaScrip ...
- CSS代码检查工具stylelint
前面的话 CSS不能算是严格意义的编程语言,但是在前端体系中却不能小觑. CSS 是以描述为主的样式表,如果描述得混乱.没有规则,对于其他开发者一定是一个定时炸弹,特别是有强迫症的人群.CSS 看似简 ...
随机推荐
- Centos7修改用户名
系统原来的用户lou,改为scrapy,要改以下个地方,注:没有修改对应密码 1. # vi /etc/passwd 修改其中的用户名部分.用户组部分.主目录部分2. 修改用户组的配置文件 # ...
- openstack nova 创建虚机流程
1文件 nova.api.openstack.coumpute.servers1函数 def create(self, req, body):1调用 (instances, resv_id) = se ...
- 2020.5.25 第五篇 Scrum冲刺博客
Team:银河超级无敌舰队 Project:招新通 项目冲刺集合贴:链接 目录 一.每日站立会议 1.1 会议照片 1.2 项目完成情况 二.项目燃尽图 三.签入记录 3.1 代码/文档签入记录 3. ...
- 第7篇scrum冲刺(5.27)
一.站立会议 1.照片 2.工作安排 成员 昨天已完成的工作 今天的工作安排 困难 陈芝敏 学习云开发,云函数调用以及数据的前后端传递 今天实现云词库搭建,随机获取并显示,对云开发有更深的认识 ...
- Training spiking neural networks for reinforcement learning
郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! 原文链接:https://arxiv.org/pdf/2005.05941.pdf Contents: Abstract Introduc ...
- mac安装conda后,终端的用户名前面有一个(base),最佳解决方案
mac安装了conda后,前面会有一个(base),很烦人,终于找到最佳解决方案了: $ conda config --set auto_activate_base false 原因: 安装conda ...
- SPFA算法详解
前置知识:Bellman-Ford算法 前排提示:SPFA算法非常容易被卡出翔.所以如果不是图中有负权边,尽量使用Dijkstra!(Dijkstra算法不能能处理负权边,但SPFA能) 前排提示*2 ...
- 焦大:seo思维光年(中)seo体系化
http://www.wocaoseo.com/thread-56-1-1.html 光年的seo培训一直被业界公认为高端的培训,其主导的seo数据化一直对现在很多人的影响至深,比如我自己.但是也有人 ...
- 最强云硬盘来了,让AI模型迭代从1周缩短到1天
摘要:华为云擎天架构+ Flash-Native存储引擎+低时延CurreNET,数据存储和处理还有啥担心的? 虽然我们已经进入大数据时代,但多数企业数据利用率只有10%,数据的价值没有得到充分释放. ...
- 复制一个Python全部环境到另一个环境
导出此环境下安装的包的版本信息清单 pip freeze > requirements.txt 联网,下载清单中的包到all-packet文件夹 [root@localhost ~]# p ...