详解Sonar与Jenkins 的集成使用!

news/2025/1/10 6:49:59 标签: jenkins, devops, 持续集成, 代码覆盖率

本文阅读前提

本文假设读者熟悉Jenkins和SonarQube的基础操作。

核心实现功能

Jenkins中运行的job来调用SonarScanner,最后可实现测试结果与SonarQube中同步查看。

Jenkins中安装Sonar相关插件

配置Sonarqube

Dashboard>Manage Jenkins>Systems

指定sonarqube server的url

这里需要注意,Server authentication token中的类型!!!!

配置过程中点击添加后,只能选择类型是Secret text,该值为SonarQube中对应项目的项目令牌

配置Sonar Scanner

Dashboard>Manage Jenkins>Systems

Jenkins中直接查看SonarQube结果

构建完成后,我们可以直接查看SonarQube的运行结果,点击下图中红框内的标识

Jenkins Job中的调用SonarScanner的脚本

脚本参考如下,脚本通过mvn 完成对soanrscanner的调用
node {
  stage('SCM') {
    checkout scm
  }
  stage('SonarQube Analysis') {
    def mvn = tool 'Default Maven';
    withSonarQubeEnv() {
      bat "${mvn}/bin/mvn clean verify sonar:sonar -Dsonar.host.url=http://ip:9000 -Dsonar.projectKey=key -Dsonar.projectName='SonarJavaDemo'"
    }
  }
}

我的每一篇文章都希望帮助读者解决实际工作中遇到的问题!如果文章帮到了您,劳烦点赞、收藏、转发!您的鼓励是我不断更新文章最大的动力!


http://www.niftyadmin.cn/n/5818302.html

相关文章

基于mybatis-plus历史背景下的多租户平台改造

前言 别误会,本篇【并不是】 要用mybatis-plus自身的多租户方案:在表中加一个tenant_id字段来区分不同的租户数据。并不是的! 而是在假设业务系统已经使用mybatis-plus多数据源的前提下,如何实现业务数据库隔开的多租户系统。 这…

有关Redis的相关概述

一、Redis概述 1.1 Redis简介 Redis是一个开源的高性能键值对数据库,使用C语言编写,支持多种数据结构,如字符串(String)、列表(List)、哈希(Hash)、集合(Set…

一文讲清计算机中的镜像,以及其在计算机中的作用

一、什么是计算机中的镜像 在计算机中,镜像(Computer Image)是对系统、磁盘、光盘或应用程序的完整复制或备份,它包含了所有的数据、文件系统、配置和应用程序。镜像技术广泛应用于系统备份、恢复、数据迁移、虚拟化以及软件部署…

9.4 visualStudio 2022 配置 cuda 和 torch (c++)

一、配置torch 1.Libtorch下载 该内容看了【Libtorch 一】libtorchwin10环境配置_vsixtorch-CSDN博客的博客,作为笔记用。我自己搭建后可以正常运行。 下载地址为windows系统下各种LibTorch下载地址_libtorch 百度云-CSDN博客 下载解压后的目录为: 2.vs…

npm i 报错

nodejs中 使用npm install命令时报错 npm err! file C: \user\admin\package.json_package.json 里缺少 description 和 repository 两个n字段。-CSDN博客

【软考】软件设计师

「学习路线」(推荐该顺序学习,按照先易后难排序) 1、上午题—计算机系统(5~6分)[1.8; ] 2、上午题—程序设计语言(固定6分) 3、下午题—试题一(15分) 4、上午题—知识产权…

培训机构Day23

今天开了javaee,这算是java最重要的部分了,这得好好学。 知识点: JavaEE > JakartaEE Java: 1。Java SE:标准版。standard edition。 -----2。Java EE:Enterprise Edition,多出一些包和库。…

NLP中常见的分词算法(BPE、WordPiece、Unigram、SentencePiece)

文章目录 一、基本概念二、传统分词方法2.1 古典分词方法2.2 拆分为单个字符 三、基于子词的分词方法(Subword Tokenization)3.1 主要思想3.2 主流的 Subword 算法3.2 Subword 与 传统分词方法的比较 四、Byte Pair Encoding (BPE)4.1 主要思想4.2 算法过…