51Testing软件测试论坛
标题: 多模块Gradle项目配置SonarQube [打印本页]
作者: 草帽路飞UU 时间: 2019-3-19 15:24
标题: 多模块Gradle项目配置SonarQube
1. 配置build.gradle
- buildscript{
- repositories {
- maven {url "https://plugins.gradle.org/m2/"}
- }
- dependencies {
- classpath("org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.6")
- }
- }
- apply plugin: "org.sonarqube"
- sonarqube {
- properties {
- property "sonar.sourceEncoding", "UTF-8"
- }
- }
- subprojects {
- apply plugin: 'java'
- apply plugin: 'eclipse'
- apply plugin: 'idea'
- sourceCompatibility = 1.8
- targetCompatibility = 1.8
- // 编码改为 UTF-8
- [compileJava, compileTestJava, javadoc]*.options*.encoding = 'UTF-8'
- repositories {
- mavenCentral()
- jcenter()
- }
- dependencies {
- //maven仓库中心没有的jar,则放入libs目录下
- compile fileTree(dir: 'libs', include: ['*.jar'])
- // 通用依赖
- compile("org.springframework:spring-aop:${springVersion}")
- // 测试依赖
- testCompile 'junit:junit:4.12'
- }
- sourceSets {
- main {
- java.srcDir('src/main/java')
- resources.srcDir('src/main/resources')
- }
- test {
- java.srcDir('src/test/java')
- resources.srcDir('src/test/resources')
- }
- }
- }
复制代码2. Build Sync
对引入的SonarQube进行可执行分析,可执行状态如下图所示:
[attach]123036[/attach]
若build.gradle配置有误,则执行结果如下图所示:
[attach]123037[/attach]
3. 多模块的SonarQube配置
1. 共享配置设置
- subprojects {
- sonarqube {
- properties {
- property "sonar.sources", "src"
- }
- }
- }
复制代码共享配置设置可以在subprojects 中进行声明
2. 个别模块配置
个别模块的特殊配置声明在模块内部的build.gradle中,具体配置如下:
- project(":project1") {
- sonarqube {
- properties {
- property "sonar.branch", "Foo"
- }
- }
- }
复制代码3. 分析时跳过特定的模块
多模块的项目中,如果想忽略某模块,即不分析某模块,可在特定模块内的build.gradle中进行如下配置:
- project(":project2") {
- sonarqube {
- skipProject = true
- }
- }
复制代码4. 执行SonarQube分析
1. 执行命令
2. 执行结果
[attach]123038[/attach]
作者: Miss_love 时间: 2020-12-30 17:45
支持分享
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) |
Powered by Discuz! X3.2 |