码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • SonarQube学习笔记三:直接使用sonar-scanner扫描器


    目录

    • 1.安装Sanner扫描器
    • 2.环境变量配置
    • 3.创建项目
      • 3.1 登录并创建项目
      • 3.2 输入项目名称信息
      • 3.3 选择分析仓库类型
      • 3.4 创建令牌
      • 3.5 保存令牌(非必须)
      • 3.6 选择构建技术方案
        • 3.6.1 .Net类项目
        • 3.6.2 Java类项目
      • 3.7 获取Sonar检查结果
      • 3.8 在页面查看检查结果或者下载检查报告。
      • 3.9 Bug清单,点击可以查看该bug详细信息。
      • 3.10 bug优化建议

    如果不采用自动化方式执行代码扫描。可以在本机安装Sonar Sanner扫描器,手动启动扫描。不过我不推荐这种做法,有Jenkins自动化跑的话是没有必要手动操作的。

    1.安装Sanner扫描器

    下载地址:
    .Net类项目:
    https://docs.sonarsource.com/sonarqube/9.9/analyzing-source-code/scanners/sonarscanner-for-dotnet/
    其它类型项目请查阅:
    Analyzing source code overview (sonarqube.org)

    2.环境变量配置

    以.Net为例,可执行文件的目录添加到 %PATH% 环境变量中。
    在这里插入图片描述

    在命令行输入:SonarScanner.MSBuild.exe,显示如下说明环境变量配置成功。
    在这里插入图片描述

    Scanner安装目录下修改SonarQube.Analysis.xml。添加url和token属性(token可以在完成创建令牌后再填入)。
    在这里插入图片描述

    3.创建项目

    3.1 登录并创建项目

    登录sonar首页,顶部菜单点击“项目”,然后在页面右上角点击“创建项目”,选择“手工”方式。
    在这里插入图片描述

    3.2 输入项目名称信息

    输入显示名、标识和主分支,主分支默认是main,可以和自己仓库的分支名称保持一直。
    在这里插入图片描述

    3.3 选择分析仓库类型

    选择“本地”。
    在这里插入图片描述

    3.4 创建令牌

    选择“永不过期”,点击“创建”按钮。
    在这里插入图片描述

    3.5 保存令牌(非必须)

    可以将令牌保存在本地(非必须),然后点击继续。
    在这里插入图片描述

    3.6 选择构建技术方案

    根据自己的项目类型选择对应的构建技术方案。当你点击技术方案后,会直接给出运行命令,不同类型项目命令不同,复制到本机cmd窗口直接执行。

    3.6.1 .Net类项目

    如果您使用的是.NET Framework版本的扫描仪,则需要.NET Framework v4.6或更高版本。要使SonarQube的商业版本受益于安全分析,您需要.NET Framework v4.7.2或更高版本。
    用于编译.NET扫描程序(.NET Framework、.NET Core或.NET)的flavor与生成要分析的项目时使用的.NET版本无关。具体来说,您可以使用.NET Framework版本的扫描程序来分析.NET Core代码。它只与您的操作系统和您的构建计算机上安装的.NET SDK版本有关。

    以.Net Core项目举例说明操作方法:
    在这里插入图片描述
    如果是.Net Core需要安装工具,Framework的扫描器是SonarScanner.MSBuild.exe不通过该命令行方式安装:

    dotnet tool install --global dotnet-sonarscanner
    
    • 1

    如果安装sonar成功,命令行显示如下:
    在这里插入图片描述

    dotnet sonarscanner begin /k:"-TEST" /d:sonar.host.url="http://192.10.50.55:9000"  /d:sonar.login="sqp_dc547e66c23228d82dd3c15ba7ed5e78c700c815"
    
    dotnet build
    
    dotnet sonarscanner end /d:sonar.login="sqp_dc547e66c23228d82dd3c15ba7ed5e78c700c815"
    
    • 1
    • 2
    • 3
    • 4
    • 5

    3.6.2 Java类项目

    在这里插入图片描述

    3.7 获取Sonar检查结果

    在项目列表找到自己的项目,面板首页可以看到部分主要指标信息,点击项目名称可以进入详情页面。
    在这里插入图片描述

    3.8 在页面查看检查结果或者下载检查报告。

    在这里插入图片描述

    3.9 Bug清单,点击可以查看该bug详细信息。

    在这里插入图片描述

    3.10 bug优化建议

    在bug详细信息界面查看问题的位置和原因,sonar工具对于部分bug会给出优化改进建议,目前建议信息不支持中文。

    在这里插入图片描述

  • 相关阅读:
    算法基础知识(持续更新)
    Eyeshot Ultimate参数化建模升级
    docker 搭建本地Chat GPT
    redis + AOP + 自定义注解实现接口限流
    NeurIPS 2022 | 涨点神器!利用图像辅助三维点云分析的训练新范式
    4 Spring Boot 数据校验
    银行信创化仍需考虑生态建设
    递归 函数
    11月VR大数据:SteamVR新增PICO 4串流数据统计
    上位机程序,上位机界面开发,ATECLOUD中国人自己的LabVIEW
  • 原文地址:https://blog.csdn.net/xiangcns/article/details/133375606
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号