繁体   English   中英

如何从基于gradle的项目中检索sonar-project-properties

[英]How to retrieve sonar-project-properties from gradle based project

当前状态

我目前正在开发一个Java应用程序,该应用程序应该在本地克隆不同的项目,并生成sonar-project.properties文件以准备进行SonarQube分析。

应用程序可以通过检测“ pom.xml”文件并从该文件中的标记获取所需的属性(例如“ sonar.modules”)并将其写入该项目的sonar-project.properties文件中,从而对基于Maven的项目执行此操作。

现在,我应该扩展程序以分析基于Gradle的项目。 由于我从未与Gradle合作过,所以我的问题是,在哪里可以找到我所需的信息,以便正确配置sonar-project.properties文件,例如模块,sourceDirectory等。

这是我的第一个SOF问题,因此,如果您需要任何其他信息,请写评论。

提前致谢。

如果您完全使用gradle来构建项目,那么这将很容易实现。 最重要的是,你需要在gradle这个插件的文档和例子仔细看- https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner+for+Gradle

我将在此处添加一个简短的gradle构建脚本,该脚本基于带有gradle的start.spring.io项目。 当您致电gradle build sonarqube这将

  • 建立你的应用程序
  • 运行测试,涵盖范围也适用于jacoco插件
  • 将所有内容上传到指定的声纳服务器

例:

buildscript {
    ext {
        springBootVersion = '2.0.1.RELEASE'
    }
    repositories {
        mavenCentral()
        maven {
            url "https://plugins.gradle.org/m2/"
        }
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
        classpath 'org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.6.2'
        classpath "org.ajoberstar:grgit:2.2.0"
    }
}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'jacoco'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
apply plugin: 'org.sonarqube'

group = 'net.gradle.testing'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8

repositories {
    mavenCentral()
}


dependencies {
    compile('org.springframework.boot:spring-boot-starter')
    testCompile('org.springframework.boot:spring-boot-starter-test')
}

sonarqube {
    properties {
        System.setProperty('sonar.host.url', 'host URL')
    }
}

但是,如上所述,要设置特殊属性或如何设置Proejct键和名称,最好检查扫描仪的文档:D

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM