【SonarQube】下载、安装、配置、使用介绍

这篇具有很好参考价值的文章主要介绍了【SonarQube】下载、安装、配置、使用介绍。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

SonarQube安装

  • 官网下载地址: http://www.sonarqube.org/downloads/
  • 9.9.1.69595下载地址: https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-9.9.1.69595.zip
  • 10.0.0.68432下载地址: https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-10.0.0.68432.zip

运行

  • 解压后运行bin目录下的启动脚本
    cd sonarqube-10.0.0.68432/bin/linux-x86-64
    ./sonar.sh start
    
  • 如果是使用root用户启动SonarQube会报错,可参考启动问题处理
    • 再次使用sonar用户启动: sudo su - sonar -c '/opt/sonarqube-10.0.0.68432/bin/linux-x86-64/sonar.sh start'
  • 如果ulimit -Hn显示的数字是4096,可参考修改文件数限制
    • 再次启动: sudo su - sonar -c '/opt/sonarqube-10.0.0.68432/bin/linux-x86-64/sonar.sh start'
  • 如果使用JDK 20启动,需要换成JDK 17
  • 浏览器输入地址: http://localhost:9000/
  • 默认账号密码: admin/admin
  • 第一次登录会提示修改密码
    sonarqube下载,构建工具,elasticsearch,SonarQube,代码质量,DevOps,Maven

使用root启动问题处理

  • 查看logs/sonar.log日志
    2023.05.29 10:07:25 INFO  app[][o.s.a.SchedulerImpl] Waiting for Elasticsearch to be up and running
    2023.05.29 10:07:34 WARN  app[][o.s.a.p.AbstractManagedProcess] Process exited with exit value [ElasticSearch]: 1
    2023.05.29 10:07:34 INFO  app[][o.s.a.SchedulerImpl] Process[ElasticSearch] is stopped
    2023.05.29 10:07:34 INFO  app[][o.s.a.SchedulerImpl] SonarQube is stopped
    

    提示处理ElasticSearch出错

  • 继续查看logs/es.log
    2023.05.29 10:07:34 ERROR es[][o.e.b.Elasticsearch] fatal exception while booting Elasticsearch
    java.lang.RuntimeException: can not run elasticsearch as root
            at org.elasticsearch.bootstrap.Elasticsearch.initializeNatives(Elasticsearch.java:260) ~[elasticsearch-8.6.1.jar:?]
            at org.elasticsearch.bootstrap.Elasticsearch.initPhase2(Elasticsearch.java:166) ~[elasticsearch-8.6.1.jar:?]
            at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:66) ~[elasticsearch-8.6.1.jar:?]
    
    • Elasticsearch不允许root用户启动
    • 同时也意味着SonarQube也不允许root用户启动
  • 创建新用户
    adduser sonar
    passwd sonar
    chown -R sonar:sonar sonarqube*
    

修改文件数限制

查看logs/es.log

2023.05.29 10:36:05 WARN  es[][o.e.b.BootstrapChecks] max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
2023.05.29 10:36:05 WARN  es[][o.e.b.BootstrapChecks] max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

解决方案

  • vi /etc/security/limits.conf
  • 追加一行: * - nofile 1000000
  • 查看hard限制: ulimit -Hn
  • 退出当前会话,重新打开新的会话生效

JDK版本问题

查看logs/nohup.log

Exception in thread "main" java.lang.UnsupportedOperationException: The Security Manager is deprecated and will be removed in a future release
        at java.base/java.lang.System.setSecurityManager(System.java:429)
        at org.sonar.process.PluginSecurityManager.restrictPlugins(PluginSecurityManager.java:42)
        at org.sonar.server.app.WebSecurityManager.apply(WebSecurityManager.java:47)
        at org.sonar.server.app.WebServer.main(WebServer.java:101)

解决方案

  • 本地使用的是JDK 20,换成JDK 17即可

创建Project

sonarqube下载,构建工具,elasticsearch,SonarQube,代码质量,DevOps,Maven

创建token

sonarqube下载,构建工具,elasticsearch,SonarQube,代码质量,DevOps,Maven

sonarqube下载,构建工具,elasticsearch,SonarQube,代码质量,DevOps,Maven

扫描代码

  • mvn sonar:sonar -Dsonar.projectKey=cops -Dsonar.host.url=http://localhost:9000 -Dsonar.login=sqp_1998b065cfa02ebccc672a25449fb468040cc32f
  • mvn sonar:sonar -Dsonar.projectKey=wen3-demo -Dsonar.host.url=http://localhost:9000 -Dsonar.login=sqp_866c4cbc4722590478f7f2d5cf2f9be06bee2985

结合maven-surefire-pluginjacoco-maven-plugin插件一起使用,先运行单元测试,生成代码覆盖率报告,然后再运行sonar:sonar可以把覆盖率上传到SonarQube文章来源地址https://www.toymoban.com/news/detail-598702.html

数据持久化

  • 默认使用h2数据库,存储位置data/sonar.mv.db
  • 支持数据库: OraclePostgreSQLMicrosoft SQLServer
  • 参考conf/sonar.properties,查看以sonar.jdbc开头的配置项

在线文档

  • 官网: https://docs.sonarqube.org/
  • SonarScanner for Maven: https://docs.sonarqube.org/latest/analyzing-source-code/scanners/sonarscanner-for-maven/

到了这里,关于【SonarQube】下载、安装、配置、使用介绍的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 代码质量管理 SonarQube-01-入门介绍

    Devops-01-devops 是什么? Devops-02-Jpom 简而轻的低侵入式在线构建、自动部署、日常运维、项目监控软件 代码质量管理 SonarQube-01-入门介绍 项目管理平台-01-jira 入门介绍 缺陷跟踪管理系统,为针对缺陷管理、任务追踪和项目管理的商业性应用软件 项目管理平台-01-Phabricator 入门介

    2024年03月22日
    浏览(32)
  • SonarQube安装中文插件

    SonarQube是一个开源的代码质量检查工具,它支持20几种编程语言的代码质量管理与检测,提供了可视化的报告,可以快速的定位问题所在。 直接本机安装,省心省力 然而这里可能会报错: 这时候就需要我们自己去寻找自己版本对应的包,也就是方法二 这个时候我们自己去

    2023年04月08日
    浏览(73)
  • Sonarqube安装(Docker)

    一,拉取相关镜像并运行 在运行之前要提前安装postgres并允许,新建数据库名为sonar的数据库 Docker安装postgres教程 二,检查是否运行成功 如果运行失败 如果报错信息如上 1、检查系统vm.max_map_count设置值 三,登录并安装中文插件 输入ip:19000进入主界面 登陆后修改密码,随后安

    2024年02月03日
    浏览(34)
  • docker中的jenkins去配置sonarQube

    SonarQube 是一个开源的代码分析平台, 用来持续分析和评测项目源代码的质量。 通过SonarQube我们可以检测出项目中重复代码, 潜在bug, 代码规范,安全性漏洞等问题, 并通过SonarQube web UI展示出来。 1、代码质量和安全扫描和分析平台。 2、多维度分析代码:代码量、安全隐患

    2024年02月14日
    浏览(29)
  • Sonar:VSCode配置SonarLint/SonarLint连接SonarQube

    公司为项目代码配置了Sonar检测,希望在VSCode中开发项目时能够同步远程检测。 首先要搭建java(版本11+)环境,建议直接从官网下载:JDK 11.0.18;没有Oracle账号 非常推荐 创建一个,流程很简单,填写一些信息即可~官网的资源和文档是获取最方便、问题最少的,比网络上大多

    2024年02月06日
    浏览(28)
  • Docker自动化部署安装(十)之安装SonarQube

    这里选择的是: sonarqube:9.1.0-community (推荐使用,版本太低的话里面的一些插件会下载不成功的)  postgres:9.6.23    数据库(sonarqube7.9及以后便不再支持mysql) 1、docker-sonarqube.yml文件 2、docker-compose运行拉去镜像 docker-compose -f docker-sonarqube.yml up -d  3、http://IP:9000 访问

    2024年02月13日
    浏览(32)
  • docker compose 下安装 sonarqube(带多分支插件)

    docker compose 方式安装 sonarqube 是我最推荐的方式。 理由有如下: 1、资源占用少。 2、sonarqube 依赖 Elasticsearch(存储代码扫描报告)、postgres(存储规则数据、账号密码等)。而 Elasticsearch 本身是不能用 root 账户启动的(如果是 tar 包安装在启动 sonarqube 的时候经常忘记切换账户

    2024年04月13日
    浏览(22)
  • 【Sonar】使用SonarQube检测Vue项目代码

    本文以Vue项目为例,介绍了如何配置Sonarqube检测工具环境 GitHub仓库 https://docs.sonarqube.org/latest/requirements/requirements/ sonarqube运行依赖Java环境 推荐Java 11 Sonarqube支持连接数据库输出检测结果,但目前涉及的功能中并未使用到数据库 下载 https://www.sonarqube.org/downloads/ 版本:本教程使

    2024年02月11日
    浏览(27)
  • 【微服务部署】一、使用docker-compose部署Jenkins、SonarQube、PostgreSQL

    一、安装 1、编写docker-compose部署Postgres、SonarQube、Jenkins的yml文件jenkins-compose.yml Postgres:作为SonarQube的数据库存储 SonarQube:代码质量检查 Jenkins:jenkins/jenkins:lts镜像,jenkinsci/blueocean镜像缺少node运行时环境,导致node无法运行。 关键配置说明( 宿主机 : Docker容器): /data/doc

    2024年02月09日
    浏览(30)
  • SonarQube Api调用指南

    好几年前写过一篇sonar api调用的文档,很多人看,但是当时写的比较简陋,很多小伙伴在下方留言,也答应过一些小伙伴些一篇示例,本文主要目的是一篇扫盲贴。 一、接口文档 要使用sonarqube的api接口,你首先要知道接口文档在哪里 我们打开任意一个sonarqube平台的页面,拉

    2024年02月16日
    浏览(25)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包