在服务器搭建sonarqube后,本地的windows个人电脑如何使用sonar-scanner?

在服务器搭建sonarqube后,每个人都可以在本地使用sonar-scanner扫描代码。

sonarqube与sonar-scanner的关系

一、本地电脑安装jdk

至少安装1.8版本以上的jdk,安装后配置后环境变量。

二、下载sonar-scanner

三、将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=python

  • sonarsourceEncoding=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的使用的更多相关文章

  1. 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 ...

  2. 解决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.

  3. SonarQube Scanner的配置与使用简介

    一.下载 下载地址: https://sonarsource.bintray.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-3.0.3.77 ...

  4. 搭建Sonar代码走查环境

    1.下载SonarQube并解压(查看检测结果用) 2.根据自己系统下载SonarQube Runner(检测代码用,旧版名叫Sonar Scanner) 3.在自己要检测的工程目录下建立sonar- ...

  5. 持续集成之②:整合jenkins与代码质量管理平台Sonar并实现构建失败邮件通知

    持续集成之②:整合jenkins与代码质量管理平台Sonar并实现构建失败邮件通知 一:Sonar是什么?Sonar 是一个用于代码质量管理的开放平台,通过插件机制,Sonar 可以集成不同的测试工具 ...

  6. CentOS6.8配置SonarQube Scanner配合SonarQube使用

    下载最新的SonarQube Scanner压缩包  https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner ...

  7. jenkins + sonar 安装配置

    最近把snoar 添加上了 [root@snoar data]#   wget https://sonarsource.bintray.com/Distribution/sonarqube/sonar ...

  8. Jenkins之Sonar 代码检查

    一.简介 SonarQube 是一个用于代码质量管理的开放平台.通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具.与持续集成工具(例如 Hudson/Jenkins 等 ...

  9. 代码规范审查 – Sonar分析项目

    Sonar搭建成功之后,就可以通过简单的CMD指令进行项目分析,此篇主要介绍使用Sonar来分析.net项目. 扫描步骤: a.    打开CMD,切换到指定的项目根目录,和.sln同级目录即可(此处 ...

  10. 代码规范审查 -Sonar环境搭建

    Sonar概述 Sonar 是一个用于代码质量管理的开放平台,可以进行代码质量的持续跟踪审查,支持的语言包含C#.java.PHP.C等.可以通过UI一睹Sonar的强大之处. Sonar安装     ...

随机推荐

  1. 【工作篇】了解升级 Spring 版本导致的跨域问题

    一.背景 最近需要统一升级 Spring 的版本,避免 common 包和各个项目间的 Spring 版本冲突问题.这次升级主要是从 Spring 4.1.9.RELEASE 升级到 Spring 4 ...

  2. CTFre-getit-WP

    攻防世界getit-WP 日子忙起来人也就忙,CTF慢慢刷,慢就是快. 下载之后,也没管别的直接就IDA打开:下载之后,也没管别的直接就IDA打开: 随便点点看得到三个可以字符串.F5看看: 懂个大概 ...

  3. MySQL基本概念及增删改查操作

    SQL.DB.DBMS关系 DB: DataBase(数据库,数据库实际上在硬盘上以文件的形式存在) DBMS: DataBase Management System(数据库管理系统,常见的有:MyS ...

  4. windows和liunx下换行符问题

    区别 windows换行符是: \r\n liunx换行符是: \n 问题 程序处理的时候就会有问题,因为在Windows的文件多了一个\r 解决办法(转换文件格式) vim file :set fi ...

  5. spring框架学习日志一

    一.简介 1.对spring框架的简单理解 可以理解为它是一个管理对象的创建.依赖.销毁的容器 Spring 是一个开源框架. Spring 为简化企业级应用开发而生. 使用 Spring 可以使简单 ...

  6. File--字节流--字符流

    File类 java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建.查找和删除等操作. 1.构造方法 public File(String pathname) :通过将给定 ...

  7. ThreadLocal 的应用

    ThreadLocal set() 的只能是当前线程能使用的值 public class TestTreadLocal{ public static final ThreadLocal threadS ...

  8. spring-data-redis 动态切换数据源

    最近遇到了一个麻烦的需求,我们需要一个微服务应用同时访问两个不同的 Redis 集群.一般我们不会这么使用 Redis,但是这两个 Redis 本来是不同业务集群,现在需要一个微服务同时访问. 其实我 ...

  9. spring boot纯注解开发模板

    简介 spring boot纯注解开发模板 创建项目 pom.xml导入所需依赖 点击查看源码 <dependencies> <dependency> <groupId& ...

  10. Learning ROS: Aboat URDF (Unified Robot Description Format)

    Building a Visual Robot Model with URDF from Scratch roscore &# With $(find urdf_tutorial), this ...