静态代码分析

准备条件:linux服务器、可执行docker命令
  1. 拉取sonarqube的镜像
             docker pull sonarqube
  1. 安装sonarqube服务
             docker run -d --name sonarqube \
            -e SONAR_ES_BOOTSTRAP_CHECKS_DISABLE=true \
            -e SONARQUBE_JDBC_USERNAME=sonar \
            -e SONARQUBE_JDBC_PASSWORD=123456 \
            -v sonarqube_conf:/opt/sonarqube/conf \
            -v sonarqube_extensions:/opt/sonarqube/extensions \
            -v sonarqube_logs:/opt/sonarqube/logs \
            -v sonarqube_data:/opt/sonarqube/data \
           -p 9000:9000 sonarqube:latest
  1. 将linux宿主机上的9000端口暴露出去
             用户访问ip:9000即可登录sonarqube的管理网页,最好是用代理把域名改一下
  1. sonarqube网页配置
             步骤2执行后,即可访问网页,但是需等待它初始化1-2分钟
             初始账号admin 密码admin
             登录后修改密码为随意值
             配置中文资源包:
  1. 规则配置
            痛点分析:按默认配置,全量的一般都有几K到几十K数量的问题,包括了各种bug、漏洞、异味等等,修复起来太麻烦了,非新项目的话几乎是不可能有时间和精力去修复完的;
    所以可以只开放了null判断的bug(毕竟大多数是这个错误) 其他的错误类型由于太多了所以都忽略了,后续再考虑加别的分析规则;

 

  1. 创建项目
    省略
  1. 本地执行 & jenkins流水线
            本地:手动跑cmd命令,按照sonar上的命令;
            jenkins:类似于本地分析,在发布服务器上,每次发布时,拉取最新代码,分析,然后推送上面地址到开发群提醒修复,按需分配对应的开发及时修复;
posted @   willardzmh  阅读(24)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示