使用IntelliJ IDEA和' android-apt'的AndroidAnnotations Gradle插件:"无法找到属性' androidTestCompile'在配置容器"

时间:2014-08-08 00:08:12

标签: android intellij-idea gradle android-annotations

我正在尝试使用 AndroidAnnotations 和IntelliJ IDEA中的Gradle创建 Hello World 。 (我只对IntelliJ有一些经验,所有其他的东西对我来说都是全新的。)

我在IntelliJ IDEA中创建了一个新的 Gradle:Android模块,然后编辑build.gradle每" Configure your gradle"在AndroidAnnotations' official guide

不幸的是,我收到此错误,说我不知道​​(第18行:apply plugin: 'android-apt'

Gradle: A problem occurred evaluating project ':Hello'.
> Could not find property 'androidTestCompile' on configuration container.

这是我的build.gradle

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.7.+'
        classpath 'com.neenbedankt.gradle.plugins:android-apt:1.+'
    }
}

repositories {
    mavenCentral()
    mavenLocal() // cache (USER_HOME/.m2 folder)

}

apply plugin: 'android'
apply plugin: 'android-apt' // This is the line of the error
def AAVersion = '3.0.1'  // IS THIS OK?

dependencies {
    compile 'com.android.support:appcompat-v7:+'
    compile 'com.android.support:support-v4:18.0.0'
    apt "org.androidannotations:androidannotations:$AAVersion"
    compile "org.androidannotations:androidannotations-api:$AAVersion"
}

apt {
    arguments {
        androidManifestFile variant.processResources.manifestFile
        resourcePackageName 'com.hello.app'

        // If you're using Android NBS flavors you should use the following line instead of hard-coded packageName
        // resourcePackageName android.defaultConfig.packageName

        // You can set optional annotation processing options here, like these commented options:
        // logLevel 'INFO'
        // logFile '/var/log/aa.log'
    }
}

android {
    compileSdkVersion 20
    buildToolsVersion "20.0.0"

    defaultConfig {
        minSdkVersion 7
        targetSdkVersion 20
        versionCode 1
        versionName "1.0"
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }

    // This is only needed if you project structure doesn't fit the one found here
    // http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Project-Structure
    sourceSets {
        main {
            manifest.srcFile 'src/main/AndroidManifest.xml'
            // java.srcDirs = ['src/main/java', 'build/generated/source/apt/${variant.dirName}']
            // resources.srcDirs = ['src/main/resources']
            res.srcDirs = ['src/main/res']
            // assets.srcDirs = ['src/main/assets']
        }
    }
}

1 个答案:

答案 0 :(得分:1)

版本兼容性。

androidTestCompile 是在Android Gradle插件的 0.9.0 版本中引入的(我在这里使用的是 0.7。+ ),所以0.9.0是android-apt的新版本( 3.0.1 )应该使用的最小版本。


此外,对于所有这些工具的不兼容版本,您可能会遇到更多问题。

Here Android Studio,Android Gradle插件 Gradle

版本兼容性的表格