sonar-scanner的使用
在服务器搭建sonarqube后,本地的windows个人电脑如何使用sonar-scanner?
在服务器搭建sonarqube后,每个人都可以在本地使用sonar-scanner扫描代码。
sonarqube与sonar-scanner的关系
一、本地电脑安装jdk
至少安装1.8版本以上的jdk,安装后配置后环境变量。
二、下载sonar-scanner
官网下载:https://docs.sonarqube.org/latest/analysis/scan/sonarscanner/
同步地址:https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/
三、将sonar-scanner添加到环境变量
下载后解压
方法1:直接将bin目录添加到path环境变量中
如:E:\sonar-scanner-cli-4.6.2.2472-windows\sonar-scanner-4.6.2.2472-windows\bin
方法2:先将一个SONAR_SCANNER_HOME,再添加到path环境变量中
注意:SONAR_SCANNER_HOME是填写到sonar-scanner的根目录,E:\sonar-scanner-cli-4.6.2.2472-windows
然后path添加:%SONAR_SCANNER_HOME%\bin
之后,打开cmd,输入:sonar-scanner -version,如下图所示,代表环境变量配置正确
如果出现:不是内部命令、外部命令的提示,代表环境变量没有配置正确
四、修改sonar-scanner配置文件
进入conf:E:\sonar-scanner-cli-4.6.2.2472-windows\sonar-scanner-4.6.2.2472-windows\conf,找到sonar-scanner.properties文件
配置sonarqube服务器地址,数据库地址,编码格式
sonar.host.url=http://192.168.2.122:9000/code_scan
#----- Default source code encoding
#配置编码格式
sonar.sourceEncoding=UTF-8
#数据库配置
sonar.jdbc.url=jdbc:postgresql://192.168.2.122:5432/code_scan
useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
sonar.jdbc.username=postgres
sonar.jdbc.password=123456
五、将项目拉到本地并添加配置文件
假设需要扫描的项目是:G:\sonar-scanning-examples-master\sonarqube-scanner\src,扫描其中的python目录
添加一个sonar-project.properties文件
可以是txt文件直接把后缀改为.properties
sonar-project.properties文件是放到项目目录里
配置文件的说明
sonarprojectKey=在sonarQube上的实例键名(必须是唯一的,不可重复相同)
sonar.projectName=在sonarQube上的项目名称
sonar.projectVersion=1.0(项目版本号,可以不指定)
sonar.sources=.(java源代码目录指定,可以知道扫描目录,填写sonar-project.properties文件所在目录的相对路径)
如下图,sonar-project.properties文件在G:\sonar-scanning-examples-master\sonarqube-scanner\src
想要扫描python目录,就直接填写:sonar.sources=pythonsonarsourceEncoding=UTF-8(编码格式指定)
sonar.language=java(指明只扫描ava语言)
sonarjava.binaries=target/classes(class文件的目录)
六、获取扫描命令
可以从sonarqube中直接获取扫描命令,进入项目
Token: 8dcba09f6faf72b81258e58ead4d1d2ca31628d0
sonar-scanner.bat -D"sonar.projectKey=test" -D"sonar.sources=." -D"sonar.host.url=http://192.168.2.122:9000/code_scan" -D"sonar.login=8dcba09f6faf72b81258e58ead4d1d2ca31628d0"
七、进行扫描
在sonar-project.properties文件所在目录,进入cmd
执行:sonar-scanner.bat -D"sonar.projectKey=test" -D"sonar.sources=." -D"sonar.host.url=http://192.168.2.122:9000/code_scan" -D"sonar.login=8dcba09f6faf72b81258e58ead4d1d2ca31628d0"
上面的参数应该是可以修改的,这里是扫描python代码,所以可以用这个命令执行
执行成功,可以访问http://192.168.2.122:9000/code_scan/dashboard?id=test,查看结果
遇到问题
直接在项目目录执行sonar-scanner,报错
直接在项目目录执行sonar-scanner,没有权限
这样执行:sonar-scanner.bat -D"sonar.projectKey=test" -D"sonar.sources=." -D"sonar.host.url=http://192.168.2.122:9000/code_scan" -D"sonar.login=8dcba09f6faf72b81258e58ead4d1d2ca31628d0"
项目包含java代码
不能这样执行:sonar-scanner.bat -D"sonar.projectKey=test" -D"sonar.sources=." -D"sonar.host.url=http://192.168.2.122:9000/code_scan" -D"sonar.login=8dcba09f6faf72b81258e58ead4d1d2ca31628d0"
需要使用其他命令
密码错误
提示如下
sonar-scanner的使用的更多相关文章
- sonar使用故障Unable to load component class org.sonar.scanner.report.ActiveRulesPublisher/Unable to load component interface org.sonar.api.batch.rule.ActiveRules: NullPointerException
nginx后两个sonar负载分担 解决办法 Credit to @teryk-sonarsource-team, just making it an answer: Delete the direc ...
- 解决Unable to load component class org.sonar.scanner.report.ActiveRulesPublisher/Unable to load component interface org.sonar.api.batch.rule.ActiveRules: NullPointerException
解决办法 Delete the directory data/es in your SonarQube installation. Restart SonarQube.
- SonarQube Scanner的配置与使用简介
一.下载 下载地址: https://sonarsource.bintray.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-3.0.3.77 ...
- 搭建Sonar代码走查环境
1.下载SonarQube并解压(查看检测结果用) 2.根据自己系统下载SonarQube Runner(检测代码用,旧版名叫Sonar Scanner) 3.在自己要检测的工程目录下建立sonar- ...
- 持续集成之②:整合jenkins与代码质量管理平台Sonar并实现构建失败邮件通知
持续集成之②:整合jenkins与代码质量管理平台Sonar并实现构建失败邮件通知 一:Sonar是什么?Sonar 是一个用于代码质量管理的开放平台,通过插件机制,Sonar 可以集成不同的测试工具 ...
- CentOS6.8配置SonarQube Scanner配合SonarQube使用
下载最新的SonarQube Scanner压缩包 https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner ...
- jenkins + sonar 安装配置
最近把snoar 添加上了 [root@snoar data]# wget https://sonarsource.bintray.com/Distribution/sonarqube/sonar ...
- Jenkins之Sonar 代码检查
一.简介 SonarQube 是一个用于代码质量管理的开放平台.通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具.与持续集成工具(例如 Hudson/Jenkins 等 ...
- 代码规范审查 – Sonar分析项目
Sonar搭建成功之后,就可以通过简单的CMD指令进行项目分析,此篇主要介绍使用Sonar来分析.net项目. 扫描步骤: a. 打开CMD,切换到指定的项目根目录,和.sln同级目录即可(此处 ...
- 代码规范审查 -Sonar环境搭建
Sonar概述 Sonar 是一个用于代码质量管理的开放平台,可以进行代码质量的持续跟踪审查,支持的语言包含C#.java.PHP.C等.可以通过UI一睹Sonar的强大之处. Sonar安装 ...
随机推荐
- 内网探测之SPN服务扫描及相关利用
在写下一个大块之前,补充一些小知识点,也没啥新东西 0x01简介 如果常规扫描服务,结果不理想,非常GG,可以考虑使用SPN进行服务扫描,这是为了借助Kerberos的正常查询行为(向域控发起LDAP ...
- miniFTP项目实战三
项目简介: 在Linux环境下用C语言开发的Vsftpd的简化版本,拥有部分Vsftpd功能和相同的FTP协议,系统的主要架构采用多进程模型,每当有一个新的客户连接到达,主进程就会派生出一个ftp服务 ...
- 为什么网络损伤仪WANsim中没有流量通过
在使用网络损伤仪 WANsim 的过程中,有时候发现网损仪中没有流量通过.有些小伙伴可能会想:自己所有配置都是正确的 ,为什么会没有流量通过呢? 有可能,是你忽略了一些东西. 下面,我总结了一些导致网 ...
- Mac 证书错误
在 Mac 操作系统安装 Python 3.6 或以上版本时,可能会遇到证书错误:Error: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify ...
- SQL中的聚合函数运用
参考网址: https://zhuanlan.zhihu.com/p/245115561 聚合函数是什么 聚合函数是对一组值执行计算,并返回单个值的函数.常与 SELECT 语句的 GROUP BY ...
- .net下Global.asax使用
Global.asax 文件,有时候叫做 ASP.NET 应用程序文件,提供了一种在一个中心位置响应应用程序级或模块级事件的方法.你可以使用这个文件实现应用程序安全性以及其它一些任务.下面让我们详细看 ...
- Linux centos 安装 mysql 5.6
一.mysql下载 1.方式一(简单粗暴) 直接在linux 目录下wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.43-li ...
- Dapper同时操作任意多张表的实现
1:Dapper的查询帮助类,部分代码,其它新增更新删除可以自行扩展 using Microsoft.Extensions.Configuration; using System; using Sys ...
- Oracle存储过程锁表
存储过程: 解决方法如下: 1:查V$DB_OBJECT_CACHE SELECT * FROM V$DB_OBJECT_CACHE WHERE name='CRM_LASTCHGINFO_DAY' ...
- shell 字符串判空
2021-09-01 1. 字符串判空主要用到两个参数 -z 判断字符串为空否 -n 判断字符串不为空 2. 实例 #!/bin/bash PID=`date` if [ -z "$PID& ...