教你快速搭建sona服务及idea使用sona的方法
作者:前路无畏 发布时间:2023-11-20 05:22:53
目录
Sonar概述
一、 搭建sona服务
二、idea配置
三、 配置maven的setting.xml文件
四、idea中 mvn sonar:sonar 执行命令
五 访问sona查看问题
六、汉化
Sonar概述
Sonar 是一个用于代码质量管理的开放平台。通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具。与持续集成工具(例如 Hudson/Jenkins 等)不同,Sonar 并不是简单地把不同的代码检查工具结果(例如 FindBugs,PMD 等)直接显示在 Web 页面上,而是通过不同的插件对这些结果进行再加工处理,通过量化的方式度量代码质量的变化,从而可以方便地对不同规模和种类的工程进行代码质量管理。
在对其他工具的支持方面,Sonar 不仅提供了对 IDE 的支持,可以在 Eclipse 和 IntelliJ IDEA 这些工具里联机查看结果;同时 Sonar 还对大量的持续集成工具提供了接口支持,可以很方便地在持续集成中使用 Sonar。
此外,Sonar 的插件还可以对 Java 以外的其他编程语言提供支持,对国际化以及报告文档化也有良好的支持。
一、 搭建sona服务
1.下载pg数据库:
docker pull postgres
2. 下载sonaqube,版本锁定在7.9.1-community
docker pull sonarqube:7.9.1-community
3. 启动pg数据库
docker run --name postgresqldb -e POSTGRES_USER=sonar -e POSTGRES_PASSWORD=sonar -d postgres
说明:
postgresqldb :数据库名字
sonar : 用户名
sonar : 密码
4. 启动sona
docker run --name sq --link postgresqldb -e SONARQUBE_JDBC_URL=jdbc:postgresql://postgresqldb:5432/sonar -p 9999:9000 -d sonarqube:7.9.1-community
说明:
sq : sona名字
postgresqldb :pg数据库的容器名字
jdbc:postgresql://postgresqldb:5432/sonar :pg数据库的连接;sonar 为数据库名字
9999:9000 : 9999为对外暴露的端口,因为9000我的其他服务已将捷足先登,被占用了,我这里使用9999; 9000: sona容器内部的提供服务的端口
sonarqube:7.9.1-community 镜像名字
使用portainer显示正常,后者使用其他方法,确认正常,
浏览器输入连接也可以确认正常:http://10.1.8.151:9999/
用户名:admin 密码: admin
二、idea配置
三、 配置maven的setting.xml文件
<pluginGroups>
<!-- pluginGroup
| Specifies a further group identifier to use for plugin lookup.
<pluginGroup>com.your.plugins</pluginGroup>
-->
<pluginGroup>org.sonarsource.scanner.maven</pluginGroup>
</pluginGroups>
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<!-- 配置 Sonar Host地址,默认:http://localhost:9000 -->
<sonar.host.url>
http://10.1.8.151:9999/
</sonar.host.url>
</properties>
</profile>
四、idea中 mvn sonar:sonar 执行命令
大约过去2分钟。执行完成。
五 访问sona查看问题
六、汉化
来源:https://blog.csdn.net/fsjwin/article/details/118152826


猜你喜欢
- 前言本文主要跟大家介绍了关于Java用gson解析Json的相关内容,分享出来供大家参考学习,需要的朋友们下面来一起看看吧。json数据{&
- 创建maven web项目有两种方式,一种是使用骨架方式,一种是不使用骨架的方式创建方式一、使用骨架的方式1.打开idea,按照步骤创建一个
- 本文实例为大家分享了Android仿刮刮卡效果展示的具体代码,供大家参考,具体内容如下一、Xfermode 通过使用Xfermode将绘制的
- 一、稀疏数组1、什么是稀疏数组当一个数组中大部分元素为0,或者为同一个值的数组时,可以用稀疏数组来保存该数组。稀疏数组,记录一共有几行几列,
- 在注册表启动项里添加一项,路径:SOFTWARE\Microsoft\Windows\CurrentVersion\Run或者直接:运行-&
- 演示1 - 代理创建器public class A17 { public static void main(Str
- 本文实例为大家分享了如何使用ItemTouchHelper实现侧滑删除和拖拽的具体代码,供大家参考,具体内容如下1. 定义一个简单bean类
- 读取resources下文件的方法网上有问答如下:问:new FileInputStream("src/main/resource
- 本文实例为大家分享了Android实现View滑动效果的具体代码,供大家参考,具体内容如下一、View的滑动简介View的滑动是Androi
- 本文实例总结了Android实现计时与倒计时的常用方法。分享给大家供大家参考,具体如下:方法一Timer与TimerTask(Java实现)
- 1、认识 Spring CacheSpring Cache是Spring提供的一整套缓存解决方案。它本身并不提供缓存实现,而是提供统一的接口
- 将DataGrid中上面这个表头变成下面的两行表头,你会怎么实现?很巧妙地截断和补充td tr来实现来源:http://www.cnsend
- ArrayList简介:ArrayList实现了List接口它是一个可调整大小的数组可以用来存放各种形式的数据。并提供了包括CRUD在内的多
- 本文实例讲述了C#自定义针对URL地址的处理类。分享给大家供大家参考。具体分析如下:这个C#类是专门针对URL网址处理的类,可以对URL地址
- 满满的都是干货 所有插件都是在 ctrl+alt+s 里的plugins 里进行搜索安装1、CodeGl
- java中this与super关键字的使用方法这几天看到类在继承时会用到this和super,这里就做了一点总结,与各位共同交流,有错误请各
- feign对象传参和普通传参及遇到的坑对象传参使用@RequestBody来指定传参对象@RequestMapping(value = &q
- 本文实例为大家分享了Android开发之ViewPager实现滑动切换页面的具体代码,供大家参考,具体内容如下基本构件activity_ma
- Fresco是FaceBook开源的Android平台图片加载库,可以从网络,从本地文件系统,本地资源加载图片Fresco本身已经实现了圆角
- DateTime dt = DateTime.Now;Label1.Text = dt.ToString();//2005-11-5 13: