zoukankan      html  css  js  c++  java
  • jenkins+sonar 持续集成检测代码质量

     

    一、jenkins-->Manage Plugins:安装插件 SonarQube Scanner for Jenkins

    二、jenkins-->Configure System:配置 SonarQube servers

    1)先在 sonarQube 平台创建 token,用来配置 jenkins 登录 sonarQube 

    2)然后在 jenkins 的 Configure System 配置 Name、Server URL、Server authentication token

     3)添加 token

     

     

    三、jenkins-->Global Tool Configuration:配置 SonarQube Scanner

    四、新建一个 project 

    五、配置 git

    六、注意在如下选项前打钩

    七、以 java 为例,构建添加两个构建步骤:Invoke top-level Maven targets 和 Execute SonarQube Scanner

    若没有 Invoke top-level Maven targets 的,需要先在 Manage Plugins 中安装此插件 

     这段配置很重要

     Analysis properties:

    sonar.projectKey=hr-server           # SonarQube中项目的唯一标识符。只要它是唯一的                
    sonar.projectName=hr-server          # SonarQube中项目显示的名称
    sonar.version=1.0                    # 版本号
    sonar.sources=core/src                   # 源码目录
    sonar.java.binaries=core/target/classes    # 编译后的文件目录
    sonar.language=java                              # 编程语言
    sonar.sourceEncoding=UTF-8
    sonar.scm.disabled=true

    八、构建完成之后,jenkins页面可以直接链接到 SonarQube

     

    总结

      不同语言 Analysis properties 配置略有不同。以 java 和 python 为例,不同点:java 需指定编译后的文件目录(安装maven插件),而 python 只需指定源码目录即可。

    Java:  

    Analysis properties:

    • sonar.projectKey=hr-server              # SonarQube中项目的唯一标识符。只要它是唯一的                
    • sonar.projectName=hr-server          # SonarQube中项目显示的名称
    • sonar.version=1.0                            # 版本号
    • sonar.sources=core/src                   # 源码目录
    • sonar.java.binaries=core/target/classes    # 编译后的文件目录
    • sonar.language=java                              # 编程语言
    • sonar.sourceEncoding=UTF-8
    • sonar.scm.disabled=true

    Python:

     Analysis properties:

    • sonar.projectKey=AutomationApiTest          # SonarQube中项目的唯一标识符。只要它是唯一的
    • sonar.projectName=AutomationApiTest      # SonarQube中项目显示的名称
    • sonar.projectVersion=1.0                            # 版本号
    • sonar.sources=.                     # 源码目录
    • sonar.language=py               # 编程语言
    • sonar.sourceEncoding=UTF-8          
    • sonar.scm.disabled=true
  • 相关阅读:
    初识Vulkan
    网络相关系列之中的一个:Android中使用HttpClient发送HTTP请求
    Hello,Android
    熊猫猪新系统測试之四:Ubuntu 14.04
    iOS OC08,09_内存管理
    XML总结
    【Scala-ML】怎样利用Scala构建并行机器学习系统
    在vs2010中编译log4cxx-0.10.0具体方法(从下载、编译、解决错误具体介绍)
    UI_UITableView_搭建
    Angular 4 子路由
  • 原文地址:https://www.cnblogs.com/shenh/p/13525602.html
Copyright © 2011-2022 走看看