SonarQube集成Jenkins平台搭建

SonarQube平台搭建

一、项目搭建的必要条件

二、搭建SonarQube

  • 安装教程见官网:Install the server

  • 修改sonar.properties

    sonar.jdbc.username=sonar
    sonar.jdbc.password=sonar
    sonar.jdbc.url=jdbc:postgresql://localhost/sonar?currentSchema=public sonar.web.port=9090

  • 插件汉化 方式一:登录SonarQube平台,在配置-->应用市场-->搜索Chinese Pack进行安装 方式二:下载对应jar包,放在<SONARQUBE_HOME>/extensions/plugins里面 插件市场地址:SonarQube™ Plugins Index ;针对与java的pmd-p3c插件地址:GitHub - caowenliang/sonar-pmd-p3c: sonarQube 整合 阿里p3c

三、ScanSonarScanner配置

  • 下载地址:SonarScanner

  • 配置环境变量:

    vi /etc/profile
    #SonarScanner
    export Sonar_Home=/opt/SonarScanner/
    export PATH=Sonar_Home/bin:PATH
    source /etc/profile

  • 修改 配置sonar-scanner.properties:

    #----- Default SonarQube server
    sonar.host.url=http://localhost:9090
    #----- Default source code encoding
    sonar.sourceEncoding=UTF-8

四、集成Jenkins

  • 下载ScanSonarScanner插件(插件市场搜索SonarScanner for Jenkins),重启Jenkins

  • 服务配置:Manage Jenkins > Configure System>SonarQube servers

  • 客户端配置:Manage Jenkins > Tools>SonarQube Scanner

  • 构建配置:Configure>Build Steps

  • Analysis properties 参数内容解释:

    #projectKey:项目唯一标识 projectName:项目名称 二个名字一样即可
    sonar.projectKey=iflb-web-166
    sonar.projectName=iflb-web-166
    #分析的路径 相对路径在jenkins是相对于workspace来说的
    sonar.sources=src_bak
    #登录sonarqube凭证
    sonar.login=acd76918c4eab666433c2783c073d2ddf52e120d
    sonar.nodejs.executable=/home/worker/tools/node-v10.15.3-linux-x64/bin/node
    #Java编译后的文件目录
    sonar.java.binaries=target/classes
    #只解析java语言
    sonar.language=java

相关推荐
东莞和裕包装1 小时前
如何管控广州定制纸箱生产中的啤切精度与印刷色差质量问题
大数据·运维·网络·人工智能
小飞侠在吗2 小时前
Windows 下 Nginx 访问 127.0.0.1 报 50x 错误:根因是路径里 \t 被当成 Tab
运维·windows·nginx
九硕智慧建筑一体化厂家3 小时前
楼宇自控|智慧建筑核心引擎!楼宇自控系统,赋能建筑高效低碳运维
运维·人工智能·笔记·智慧城市
90后小陈老师3 小时前
Google账号申诉处理建议
运维
怪侠_岭南一只猿4 小时前
[简单理解]小龙虾是怎么一回事?
运维·服务器·ai
海兰4 小时前
【应用】Wastnet 框架的 SSE (Server-Sent Events)从协议原理到实践指南
运维·服务器·人工智能
向生4 小时前
FRP 0.61.0 完整保姆级部署教程
运维
2401_894915535 小时前
Geo 优化源码部署实战:环境配置、参数调优完整指南
运维·服务器·数据库·tcp/ip·安全
爱和冰阔落6 小时前
【Linux】Ctrl+C 到底做了什么?从键盘、kill 到 alarm,一次讲清信号的产生
linux·运维·c++·安卓
JavaPub-rodert6 小时前
Linux 下部署 MongoDB:从安装、配置到生产环境使用
linux·运维·mongodb