主要是结合jenkins

  1. panel 设置好svn 和cron
  2. sonarqube设置好sercet
  3. jenkins输入sonarqube的用户sercet
  4. jenkins配置好sonarqube环境
  5. jenkins创建好一个built即 任务,记住名字 比如

    Project_release_check

    在docker挂载

    主机/data/svn/prj_release

    /var/jenkins_home/workspace/Project_release_check

  6. jenkins任务设置

    sonar.projectKey=${JOB_BASE_NAME}
    sonar.projectName=${JOB_BASE_NAME}
    sonar.projectVersion=1.0
    sonar.sources=/var/jenkins_home/workspace/Project_release_check
    sonar.sourceEncoding=UTF-8
    sonar.java.binaries=.
    sonar.branch.name=${Branch}

  7. jenkins设置好定时

参考网站
https://learnku.com/articles/59179
https://sagarkpanda.medium.com/how-to-install-and-configure-sonarqube-with-jenkins-2fe6c732620

  1. 建立docker
  2. 下载CLI
    https://docs.sonarsource.com/sonarqube/latest/analyzing-source-code/scanners/sonarscanner/
    注:可能需要FQ才能看见下载链接
  3. 在server端创建 project 和 token
  4. 客户端运行
    sonar-scanner -Dsonar.projectKey=项目名字 -Dsonar.sources=./ -Dsonar.host.url=生成的URL -Dsonar.token=生成的token
    注意,如果遇到这类的sb错误
    java.lang.IllegalStateException: Error when executing blame for file
    可以添加
    -Dsonar.test.exclusions=文件所在的路径