sonarqube安装使用

2021-10-26 10:08:51 浏览数 (1)

在工作中,我们常常会苦于冗余、繁杂的代码结构导致项目出现各种各样的坏味道。但是工作中可能会忙于各种事物,又不能及时的去审查部门成员的代码。这种情况下, sonarqube就能成为review的神器。它能通过scanner分析不同语言环境下代码存在的问题,并能够得到代码重复率,bug数量,代码行数等不同维度的指标。

下面对安装和使用的步骤进行简单介绍:

(图片来自:https://www.sonarqube.org/downloads/)

只有community版本是免费的,其余三个版本都是收费的,如下:

(图片来自:https://www.sonarqube.org/downloads/)

管理员运行:sonarqube-9.1.0.47736binwindows-x86-64StartSonar.bat

代码语言:javascript复制
wrapper  | --> Wrapper Started as Console
wrapper  | Launching a JVM...
jvm 1    | Error: Could not create the Java Virtual Machine.
jvm 1    | Error: A fatal exception has occurred. Program will exit.
jvm 1    | Unrecognized option: --add-exports=java.base/jdk.internal.ref=ALL-UNN
AMED
wrapper  | JVM exited while loading the application.
wrapper  | JVM Restarts disabled.  Shutting down.
wrapper  | <-- Wrapper Stopped
请按任意键继续. . .

下载jdk11 :

(图片来自:https://www.oracle.com/java/technologies/javase/jdk11-archive-downloads.html)

安裝完成后:

访问:localhost:9000,默认密码:admin/admin

更新密码:

配置gitlab:

设置名称和过期时间

保存完状态如下:

代码语言:javascript复制
You have the following errors in your configuration:
. Could not validate Gitlab url. Got an unexpected answer.

这里要确定的是Gitlab url对应的url是https还是http,是api/v3,还是api/v4,如下,如果访问 http://ip/api/v3 可能会出现如下内容,如果这里的gitlab api认证不通过的情况下,就无法进行下一步:

这种情况下就试试 api/v4

连接上以后如下内容:

输入access token,这个access token是在gitlab上面步骤中生成的gitlab的personal access token。正确输入后会显示如下页面:

对应授权的git账号上的项目。选择项目右侧的setup按钮即可。

代码语言:javascript复制
Analyze your project with GitLab CI
Waiting for the first analysis to come in...

安装插件的时候要选择上面的声明阅读后,才能出现install的按钮。【如果不在部署的那台机器上安装, 会提示联系管理员安装】

(图片来自:https://docs.sonarqube.org/latest/analysis/scan/sonarscanner/)

设置环境变量:...sonar-scanner-cli-4.6.2.2472-windowssonar-scanner-4.6.2.2472-windowsbin 添加到系统变量的PATH中,添加完成后,cmd窗口下输入如下内容:

代码语言:javascript复制
sonar-scanner

表示添加成功。

創建令牌,或者选择已有令牌如下:

使用喜欢的CI进行分析,如下,选择其他CI,创建一个令牌,并保存,因为项目配置的时候会用到,保存下令牌后,如下:

复制完,在开发环境的项目根目录下执行执行扫描,就像图示中的说明:“在你的电脑上执行SonarQube扫描”

扫描完成后,在cmd的输出内容中会提示,访问对应的url查看扫描结果。如下:

代码语言:javascript复制
http://ip:9000/dashboard?id=[projectKey]

reference

https://blog.csdn.net/weixin_44225369/article/details/120163283

https://blog.csdn.net/weixin_40861707/article/details/82117232

https://www.jianshu.com/p/81a1904b7ad1

https://community.sonarsource.com/t/could-not-validate-gitlab-url/37137

0 人点赞