我已经尝试了一段时间,以获取声纳来检查和分析我的android项目。但到目前为止没有运气。我要在声纳中实现的项目是一个具有2类并带有某些测试方法的测试项目。全部塞在项目的src目录中。

所以这就是到目前为止。

具有以下设置的build.gradle文件:

buildscript {
repositories {
    mavenCentral()
}

dependencies {
    classpath 'com.android.tools.build:gradle:0.6.+'
}
}

apply plugin: 'android'
apply plugin: 'sonar'
apply plugin: "sonar-runner"

android {

buildToolsVersion "18.0.1"
compileSdkVersion 18

defaultConfig {
    minSdkVersion 14
    targetSdkVersion 16
}

sourceSets {
    main {
        manifest.srcFile 'AndroidManifest.xml'
        java.srcDirs = ['com.example.GradleAndroidTest']
        resources.srcDirs = ['src']
        renderscript.srcDirs = ['src']
        res.srcDirs = ['res']
        assets.srcDirs = ['assets']
    }
    instrumentTest.setRoot('test')
}


}

sonar {
server {
    url = "http://sonar.someserver.int"
}
database {
    url = "jdbc:mysql://sonar.someserver.int:3306/sonar"
    driverClassName = "com.mysql.jdbc.Driver"
    username = "*****"
    password = "*****"
}
}

sonarRunner {
sonarProperties {
    property "sonar.host.url", "http://sonar.someserver.int"
    property "sonar.jdbc.url", "jdbc:mysql://sonar.someserver.int:3306/sonar"
    property "sonar.jdbc.driverClassName", "com.mysql.jdbc.Driver"
    property "sonar.jdbc.username", "*****"
    property "sonar.jdbc.password", "*****"
}
}

要测试该项目,我在命令提示符下进入该项目的根目录,然后输入:

gradle声纳

此后,该项目显示在sonarQube上,但未显示统计信息。没有代码行,什么都没有。我对你的问题是。我忘记了什么吗?难道我做错了什么。

我在gradle和声纳方面没有太多经验,所以现在我寻求这样做的人的帮助。希望能对您有所帮助!

最佳答案

我发现自己做错了。我忘记添加几个强制属性。

sonarProperties {
    property "sonar.host.url", "http://sonar.someserver.int"
    property "sonar.jdbc.url", "jdbc:mysql://sonar.someserver.int:3306/sonar"
    property "sonar.jdbc.driverClassName", "com.mysql.jdbc.Driver"
    property "sonar.jdbc.username", "*****"
    property "sonar.jdbc.password", "*****"

    //I added these properties to my gradle.build
    property "sonar.projectKey", "GradleAndroidTest"
    property "sonar.projectName", "GradleAndroidTest"
    property "sonar.projectVersion", "V1.0"
    property "sonar.language", "java"
    property "sonar.sources", "src"
    property "sonar.binaries", "build"
}

正如@Peter Niederwieser所说,该插件无法预先配置这些内容,因此我不得不手动添加它们。

我还删除了声纳插件,而改用了声纳运行器插件。

08-18 03:39