zoukankan      html  css  js  c++  java
  • SonarQube 插件之 Issues Report & SonarLint 的配置及使用

    转载自: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
    
    -------------------------------------------
    ...
    

    img

    img

    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即可。

    img

    设置 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 或者用用户名密码登录均可

    img

    img

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

    img

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

    img

    参考资料

  • 相关阅读:
    linux系统命令学习系列-用户切换命令su,sudo
    linux系统命令学习系列-用户组管理
    linux系统命令学习-用户管理
    python web开发-flask中sqlalchemy的使用
    python web开发-flask连接sqlite数据库
    python实现bt种子 torrent转magnet
    prefProvider.kt
    douyin-bot-代码
    pyadb关于python操作adb的资料
    bottle源码
  • 原文地址:https://www.cnblogs.com/sanduzxcvbnm/p/13724683.html
Copyright © 2011-2022 走看看