转载自:https://cloud.tencent.com/developer/article/1010599

1、Issues Report Plugins 介绍

使用 Issues Report Plugins 插件可以为我们生成一份 HTML 格式的问题报告,对于开发人员来说是很有好处的,我们可以在改动代码后 Push 代码到仓库前,检测一下代码质量,生成问题报告,提醒自己避免提交有明显问题的代码到仓库中,当然也可以去 SonarQube Web 上查看详细情况。

2、Issues Report Plugins 使用

Issues Report Plugins 插件的使用很简单,只需要 Maven 命令行指定参数执行即可。注意:SonarQube > 5.1 版本,该插件已经过时了,不过我们还是直接可以使用,免安装。5.1 版本以后由 SonarLint 替代该插件。

mvn sonar:sonar
-Dsonar.analysis.mode=preview # 设置 mode,默认为preview -Dsonar.issuesReport.lightModeOnly=true # 设置是否只生成新增问题的报告 -Dsonar.issuesReport.html.enable=true # 设置生成 HTML 格式的报告
-Dsonar.issuesReport.html.name=xxxx # 设置生成 HTML 报告的文件名字
-Dsonar.issuesReport.html.location=/xx/xx # 设置生成 HTML 报告的文件存储路径 -Dsonar.issuesReport.console.enable=true # 设置报告输出到控制台

当设置-Dsonar.issuesReport.html.enable=true时,该插件默认会生成两份 HTML 报告,一份是包含所有问题的报告 ,一份为只包含新增问题的报告 ,除非设置了-Dsonar.issuesReport.lightModeOnly=true,则只生成包含新问题的报告。默认生成报告的路径为<maven_project>/target/sonar/issues-report/,使用-Dsonar.issuesReport.html.location 可修改生成路径。报告默认文件名为 issues-report.html (全部问题报告),issues-report-light.html(新增问题报告),使用-Dsonar.issuesReport.html.name=xxxx 可修改生成的文件名称。当设置-Dsonar.issuesReport.console.enable=true时,则不会生成HTML文件报告,会将检测结果打印到控制台输出。

示例:

$ mvn sonar:sonar -Dsonar.analysis.mode=preview -Dsonar.issuesReport.html.enable=true

...
[INFO] HTML Issues Report generated: /Users/wanyang3/Documents/hwy/IdeaProjects/mavenDemo/target/sonar/issues-report/issues-report.html
[INFO] Light HTML Issues Report generated: /Users/wanyang3/Documents/hwy/IdeaProjects/mavenDemo/target/sonar/issues-report/issues-report-light.html
...
$ mvn sonar:sonar -Dsonar.analysis.mode=preview -Dsonar.issuesReport.console.enable=true ...
[INFO]
------------- Issues Report ------------- +2 issues +1 critical
+1 major -------------------------------------------
...

3、SonarLint For IntelliJ IDEA 安装及配置

SonarLint 是为了替代上边 Issues Report Plugins 插件,并且更方便的集成到我们日常的开发工具里面去。SonarLint For IntelliJ IDEA 就是专门为 IDEA 工具提供的插件,它可以为开发人员时刻返回新的 Bug 以及其他质量问题,并且很直观显示在工具上边。现在支持的语言有 Java、 JavaScript 、PHP。

SonarLint 插件安装也很简单,点击 IntelliJ -> Plugins -> Browse Repositories -> 输入 SonarLint search -> install 等待下载安装完毕,点击 restart 重启 IDEA即可。

设置 SonarLint 全局配置。点击 IntelliJ -> Other Settings -> SonarLint General Settings -> Add 弹出框添加一个 New SonarQube Server,这里我们添加之前本地搭建的 SonarQube 服务 URL:http://127.0.0.1:9000,服务别名为:my_sonarqube,下一步配置认证,可以设置 Token 或者 Login / Password,配置完成后点击 Update Binding,更新绑定信息,最后点击 Apply 即可。注意:认证 Token 可以去 SonarQube Web 上生成一个认证 Token 或者用用户名密码登录均可

设置 SonarLint 项目配置,点击 IntelliJ -> Other Settings -> SonarLint Project Settings -> Bind to Server,选择刚我们配置的全局配置 my_sonarqube,在 SonarQube project 项目列表里面选择对应的项目,最后点击 Apply 即可。注意:这里的项目列表是从配置的 SonarQube 服务上拉取下来的项目,如果没有加载,可以点击 Update project list 重新加载。

以上配置完成后,就可以愉快的使用 SonarLint 插件了,这里我们以 mavenDemo 项目为例,故意写一些垃圾代码,看下检测结果吧。

参考资料

SonarQube 插件之 Issues Report & SonarLint 的配置及使用的更多相关文章

  1. vim插件管理器的安装和配置-windows

    # vim插件管理器的安装和配置-windows ### 前言------------------------------ vim做一框功能强大的编辑器,扩展功能令人称奇,插件机制非常灵活- 本篇推荐 ...

  2. jenkins展示report测试报告的配置

    HTML报告展示 1. 需要HTML Publisher plugin插件 2. 在workspace下的工程(构建)中的目录中存储测试报告 在Jenkins中新建一个job,进入配置项. 首先通过p ...

  3. SonarQube代码质量管理平台 的安装、配置与使用

    SonarQube是管理代码质量一个开放平台,可以快速的定位代码中潜在的或者明显的错误,下面将会介绍一下这个工具的安装.配置以及使用. 准备工作: 1.jdk(不再介绍) 2.sonarqube:ht ...

  4. SonarQube(5.0.1) 环境的安装配置

    SonarQube 安装步骤 确定 JDK 和 MySQL 已经成功安装. 下载 SonarQube 及工具 SonarQube Runner,下载地址:http://www.sonarqube.or ...

  5. Myeclipse插件快速生成ssh项目并配置注解 在action层注入service的超详细过程

    最近发现,我对于ssh的 自动注入配置 还是不熟悉,于是整理了一下 终于做了一个 简单的 注入配置出来. 以前都是在applicationContext.xml 里面这样配 <bean id=& ...

  6. Bootstrap Multiselect插件使用步骤以及常见参数配置介绍

    Multiselect是基于jQuery插件的,它可以以下拉列表的形式为用户提供选择内容,能进行单选或者多选.它应用的主要步骤如下: 一,引入需要的相关js和css文件 既然是Bootstrap插件, ...

  7. datetimepicker bootstrap的时间插件显示位置问题及其他配置

    位置问题: 在bootstrap中用 datetimepicker 时默认是在输入框下面弹出的, 但是遇到输入框在屏幕最下面时,日期选择框会有一部分在屏幕下面,显示不了,因此需要能够从上面弹出. 可以 ...

  8. SublimeText3 插件的使用和本身的配置

    --------------------20180109----------------------- Part1:如何设置代码字体变大变小 1.点击菜单栏 Sublime Text 中prefere ...

  9. TinyMCE插件:FileManager [4.x-6.x] 配置及BUG处理

    FileManager最新版已升级到9.x,9.x新增了对文件的批量处理,但仍然有部分同学在继续使用6.x,这里大叔整理了一份自己在配置6.x时,遇到的问题和解决方案. 安装 下载安装包解压后,在根目 ...

随机推荐

  1. 4-11 CS后台项目-4 及 Redis缓存数据

    使用Redis缓存数据 使用Redis可以提高查询效率,一定程度上可以减轻数据库服务器的压力,从而保护了数据库. 通常,应用Redis的场景有: 高频查询,例如:热搜列表.秒杀 改变频率低的数据,例如 ...

  2. 基于Caffe ResNet-50网络实现图片分类(仅推理)的实验复现

    摘要:本实验主要是以基于Caffe ResNet-50网络实现图片分类(仅推理)为例,学习如何在已经具备预训练模型的情况下,将该模型部署到昇腾AI处理器上进行推理. 本文分享自华为云社区<[CA ...

  3. jsx/tsx使用cssModule和typescript-plugin-css-modules

    目录 1,前言 2,效果图 3,如何使用 3.1,安装 3.2,配置 4,示例 5,插件错误处理 5.1,错误触发原因 5.2,解决办法 1,前言 在vite/webpack搭建的项目中,不管是vue ...

  4. WSL2安装Ubuntu20.04

    前言:听说WSL2需要Window版本在1904以上(我的window版本是1909,所以未能验证真实性) 启用WSL 控制面板 → 程序 → 程序和功能 → 启用或关闭Windows功能 勾选 适用 ...

  5. Stream流中的常用方法foeEach和Stream流中的常用方法filter

    延迟方法:返回值类型仍然是Stream接口自身类型的方法,因此支持链式调用.(除了中介方法外,其余方法均为延迟方法) 终结方法:返回值类型不再是Stream接口自身类型的方法,因此不再支持类似Stri ...

  6. MySQL8.0解决“MySQL 服务无法启动。 服务没有报告任何错误。”

    TL;NRs 初始化服务时最好使用mysqld --initialized --console命令: MySQL8.0的配置变量与MySQL5.7不同,[mysqld]下面设置字符集的变量名为char ...

  7. HDU4348 To the moon (主席树)

    标记永久化,除非想\(MLE\) 忽然感到主席树不过是函数式的树套树 #include <iostream> #include <cstdio> #include <cs ...

  8. C# 使用SIMD向量类型加速浮点数组求和运算(1):使用Vector4、Vector<T>

    作者: 目录 一.缘由 二.使用向量类型 2.1 基本算法 2.2 使用大小固定的向量(如 Vector4) 2.2.1 介绍 2.2.2 用Vector4编写浮点数组求和函数 2.3 使用大小与硬件 ...

  9. virtio_net 设备的队列数问题

    virtio_net设备的其他问题:见 https://www.cnblogs.com/10087622blog/p/15886345.html 一个virtio_net设备在 virtnet_pro ...

  10. 给网站添加pjax无刷新,换页音乐不中断

    自从博客加了悬浮音乐播放器后就一直在折腾换页音乐不中断的功能 在网上查找后发现想要实现换页音乐不中断的功能必须要为博客加pjax,于是又苦苦寻找并尝试了一番 最后发现网上实现pjax功能基本上是两种方 ...