代码检查工具 Sonar 安装&使用

2018/12/29 15:10
阅读数 77

     本文主要说明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包就是真正进行代码扫面的工具包

        https://github.com/SonarSource-VisualStudio/sonar-scanner-msbuild/releases/download/2.2/sonar-scanner-msbuild-2.2.0.24.zip

        下载后解压至任意目录即可,这里直接放到了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

 

展开阅读全文
加载中

作者的其它热门文章

打赏
0
0 收藏
分享
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部