sonar本地扫描,没有胡里花哨的操作,通俗易懂~
首先java环境(jdk)、数据库要先准备好:
1、jdk(需要设置环境变量)
2、安装sonarqube:http://www.sonarqube.org/downloads/ 这里拿社区版6.7示例
下载完后解压到简单文件夹,如:D:\H\sonarQube
然后运行D:\H\sonarQube\bin\windows-x86-64\StartSonar.bat
启动浏览器,访问http://localhost:9000,如出现下图则表示安装成功。(跟你有没有开其他代理服务没有关系)
3、配置和创建数据库
sonar需要java环境的支持,分析数据会保存到保存到数据库。支持mysql,oracle,SQLServer等
这里就当你已经配置好了Java开发环境,已经安装了mysql数据库。
打开 sonar 里面\conf目录,修改sonar.properties 文件:
配置好之后需要添加用户及sonar库,开cmd登进mysql (mysql\bin\mysql.exe -h localhost -uroot -p)
mysql> CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
mysql> CREATE USER 'sonar' IDENTIFIED BY 'sonar';
mysql> GRANT ALL ON sonar.* TO 'sonar'@'%' IDENTIFIED BY 'sonar';
mysql> GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'sonar';
mysql> FLUSH PRIVILEGES;
数据库这部分就完成啦,不过还需要一个数据库驱动放到 extensions\jdbc-driver\mysql 文件夹中,
比如我用的是:mysql-connector-java-6.0.3.jar 时空门:http://mvnrepository.com/artifact/mysql/mysql-connector-java/6.0.3
4、安装分析代码插件
根据官方文档里面有6种胡里花哨的选择,这里以SonarQube Scanner示例:https://sonarsource.bintray.com/Distribution/sonar-scanner-cli/sonar-scanner-2.8.zip
下载完毕后也是解压到简单文件夹中:如 D:\H\sonar-scanner-2.8
再将D:\H\sonar-scanner-2.8\bin 添加到环境变量Path中,然后win+R,输入cmd,Enter
在弹出的cmd窗口中输入:sonar-scanner -version,没提示“不是内部命令”则添加环境变量成功
打开D:\H\sonar-scanner-2.8\conf ,修改sonar-scanner.properties 文件:
5、运行代码分析
在你想要进行分析的项目根目录中创建一个文件sonar-project.properties:
# must be unique in a given SonarQube instance
#key是唯一的
sonar.projectKey=my:myproject
# this is the name and version displayed in the SonarQube UI. Was mandatory prior to SonarQube 6.1.
#项目名字
sonar.projectName=myproject
sonar.projectVersion=1.0# Path is relative to the sonar-project.properties file. Replace "\" by "/" on Windows.
# Since SonarQube 4.2, this property is optional if sonar.modules is set.
# If not set, SonarQube starts looking for source code from the directory containing
# the sonar-project.properties file.
sonar.sources=.# Encoding of the source code. Default is default system encoding
#sonar.sourceEncoding=UTF-8
ps:sonar.sources 是配置指定扫描目录,要注意的是该路径是以sonar-project.properties这个文件所在的目录作为相对路径的!!!如果是多个目录,用分号隔开
------------------------------------------------------------------------分割线-------------------------------------------------------------------
sonar.projectKey 是唯一项目的唯一标识,不能重复!
sonar.projectName 项目名称
创建完打开cmd,进入到进行分析的项目根目录,执行sonar-scanner
buibuibui执行完之后,成功会提示success,失败则去看log找原因(一般失败都会提示在窗口)
接着访问https://localhost:9000 ,登录的用户名跟密码都是admin(可以自己修改),然后分析结果就出来啦
6、汉化
登录进去之后找到Administration->Marketplace->搜索Chinese->同行找过去
点击Install按钮,安装成功后,重启SonarQube 服务器:
1、关闭SonarQube.bat窗口
2、Ctrl+Alt+Delete调出windows任务管理器
3、在进程中关闭所有java.exe
4、重新进入sonarqube\bin\相应版本,运行StartSonar.bat文件
--------------------------------------------------------------------End--------------------------------------------------------------------------------------
sonar本地扫描,没有胡里花哨的操作,通俗易懂~相关推荐
- Sonar安全扫描代码规则
Sonar安全扫描代码规则 blocker级别 序号 分类 规则英语描述 翻译解读 1 Bug Loops should not be infinite 循环必须有一个终止条件 2 Bug Overr ...
- Sonar 质量扫描的输出日志--对应源码的跟踪(二){sonar engine源码}
一个project下面module完整的sonar分析日志: [INFO] --- sonar-maven-plugin:3.2:sonar (default-cli) @ pcaic-parent ...
- Sonar代码扫描常见规则总结
Sonar代码扫描常见规则 最近公司项目交付,交付前集成,功能,性能,安全种种测试工作就来了,由于测试离职,被抓壮丁,兼职起测试修改工作.小公司,平时敲(ctrl+c)代码(ctrl+v) 时,同事也 ...
- 看这里,全网最详细的Sonar代码扫描平台搭建教程
01 Sonar安装 官网:https://www.sonarqube.org/ 1.sonar简介 sonar是一款静态代码质量分析工具,支持Java.Python.PHP.JavaScript.C ...
- java代码扫描项目,sonar代码扫描实现(基于java-maven)
Sonar介绍 Sonar是一个用于代码扫描检测的开放平台.可以实现对不同语言(java.python.php.C++.C#等等)的项目代码进行分析,同时可以集成不同的测试工具.代码分析工具,以及持续 ...
- html表单中动态添加下拉框,antd Select下拉菜单动态添加option里的内容操作
antd Select下拉菜单动态添加option里的内容,通过form表单绑定select选中的值 提供一个公共的方法,每次只需去调用这个方法就行了 //这里是示例数据格式 let giftScop ...
- 【C语言】那些优秀代码里的骚操作(持续更新…)
[C语言]那些优秀代码里的骚操作(持续更新-) 1.联合体`union`的妙用 2.`#include`的本质是什么? 3.脱裤子放屁的`do{ }while(0)` 4.一个成熟的代码要学会自己写函 ...
- 理光有邮件服务器吗,理光Aficio 3035复印机通过电子邮件发送扫描文件的设定方法及操作步骤...
[转]http://www.hi-office.cn/ricoh/maintenance/4987.html 理光Aficio 3035复印机通过电子邮件发送扫描文件的设定方法及操作步骤 作者:hio ...
- Itunes如何备份手机里所有数据操作教学
Itunes如何备份手机里所有数据操作教学.Itunes这个软件可以帮助苹果手机进行数据备份,帮助你保护数据安全,避免数据的丢失.很多用户没有操作过这个软件不知道怎么去进行数据备份的方法,那么接下来我 ...
最新文章
- FLASH模仿苹果菜单源码.(AS苹果菜单源码)
- Tarjan算法 (强联通分量 割点 割边)
- Java四种线程创建的思路
- 解决eclipse中java代码注释变成乱码的问题
- 划分数据集代码(按照4:1的比例)以及根据各自文件名写入txt文件
- vue tree组件_使用Vue 3.0做JSX(TSX)风格的组件开发
- python模块与类的区别_Python类、模块、包的概念及区别
- Git 和 SVN之间的五个基本区别
- 小米8青春版解BL锁教程申请BootLoader解锁教程
- 苦才是人生的经典美言
- Image类--旋转和翻转图片
- 使用Python对文件进行批量改名
- 城市文化笔记整理(二)
- ListView和条目点击事件、条目长按事件
- python工资有多少-Python工程师工资多少
- 电子技术——伪NMOS逻辑电路
- KNN 在手写识别中的应用(Java 实现)
- Landsat系列数据级别详解
- 苹果手机来电归属地_手机号码归属地能否取消?工信部回复!
- “Metro”,移动设备视觉语言的新新人类