SonarScanner扫描本地项目代码

一、Windows系统扫描

下载SonarScanner
去SonarQube官网下载相应系统的SonarScanner 点这里跳转

设置环境变量
下载好试个压缩文件,解压到你想存放的位置,设置环境变量
新增变量名:SONAR_SCANNER_HOME,值:你解压SonarScanner的位置

SonarScanner扫描本地项目代码_第1张图片

接着编辑path的变量,新增一条值,%SONAR_SCANNER_HOME%\bin,指定到你的SonarScanner bin目录。

SonarScanner扫描本地项目代码_第2张图片

验证,命令行输入sonar-scanner -h,输出以下信息便是成功了

SonarScanner扫描本地项目代码_第3张图片

新建sonar-project.properties
扫描项目代码,在项目的根目录新建sonar-project.properties文件

SonarScanner扫描本地项目代码_第4张图片

设置参数
sonar.projectKey=唯一不能重复
sonar.projectName=和上相同即可
sonar.projectVersion=扫描版本可以不指定
sonar.sources=指定扫描的项目路径下的代码
sonar.sourceEncoding=字符格式
sonar.java.binaries=指定编译目录,官方示例没有提及,如果不设置扫描会报错,可以没有编译目录但必须设置次参数
sonar.login=账号
sonar.password=密码

# must be unique in a given SonarQube instance
sonar.projectKey=windows-demo

# --- optional properties ---

# defaults to project key
sonar.projectName=windows-demo
# defaults to 'not provided'
sonar.projectVersion=1.0
 
# Path is relative to the sonar-project.properties file. Defaults to .
sonar.sources=src\main\java
 
# Encoding of the source code. Default is default system encoding
sonar.sourceEncoding=UTF-8

sonar.java.binaries=.

sonar.login=test

sonar.password=test

扫描代码
在项目的跟下地址栏直接输入cmd回车,会打开cmd并在此路径下

SonarScanner扫描本地项目代码_第5张图片

输入sonar-scanner开始扫描

SonarScanner扫描本地项目代码_第6张图片

扫描完成会提示的项目访问地址

SonarScanner扫描本地项目代码_第7张图片

也可以直接访问SonarQube平台

SonarScanner扫描本地项目代码_第8张图片

二、Mac系统扫描

和Windows一样设置环境变量指定你存放sonarscanner的路径,path添加到bin目录,项目根目录创建sonar-project.properties并设置参数,终端跳到目录路径下执行sonar-scanner即可。
注意:占还不支持Mac M芯片,所以我这后面没演示了操作和Windows大同小异

三、Linux系统扫描

支持从Docker镜像中运行SonarScanner,别再又是下载文件又是配置环境变量,直接跑docker扫描

新建项目
选择手工方式
SonarScanner扫描本地项目代码_第9张图片

设置项目名称

SonarScanner扫描本地项目代码_第10张图片

选择本地

SonarScanner扫描本地项目代码_第11张图片

创建令牌,点击继续

SonarScanner扫描本地项目代码_第12张图片

将生成的令牌、项目名称、你的SonarQube地址复制出来

SonarScanner扫描本地项目代码_第13张图片
docker参数设置
将上面生成的参数复制到里面去
SONAR_HOST_URL:SonarQube地址
SONAR_SCANNER_OPTS:参数都放这里面,-D开头
SONAR_TOKEN:令牌
-v:挂载你要扫描的项目路径

    docker run \
    --rm \
    -e SONAR_HOST_URL="http://ci.hkeasyspeed.com" \
    -e SONAR_SCANNER_OPTS="-Dsonar.projectKey=Linux-demo -Dsonar.java.binaries=. -Dsonar.source=src/main/java -Dsonar.language=java" \
    -e SONAR_TOKEN="sqp_9af67b60ad501403c1946d57153c8265f2cd62ca" \
    -v "/data/demo/easyspeed/easyspeed-auth/src:/usr/src" \
    sonarsource/sonar-scanner-cli

扫描完成

SonarScanner扫描本地项目代码_第14张图片
回到SonarQube平台查看

SonarScanner扫描本地项目代码_第15张图片

你可能感兴趣的:(SonarQube,运维,java,数学建模,开发语言,SonarQube,sonarscanner)