Android studio 0.4.2+;Android注释错误

Android studio 0.4.2+;Android注释错误,android,android-studio,android-annotations,Android,Android Studio,Android Annotations,我尝试在android studio 0.4.2中使用gradle安装android注释,但它无法配置MainActivity类 我配置了编译器->注释处理器这是一张图片 这是我的身材的一部分。gradle configurations { apt } dependencies { compile 'com.android.support:gridlayout-v7:19.0.1' compile 'com.android.support:support-v4:

我尝试在android studio 0.4.2中使用gradle安装android注释,但它无法配置MainActivity类

我配置了编译器->注释处理器这是一张图片

这是我的身材的一部分。gradle

    configurations {
    apt
}

dependencies {
    compile 'com.android.support:gridlayout-v7:19.0.1'
    compile 'com.android.support:support-v4:19.0.1'
    compile 'com.android.support:appcompat-v7:19.0.1'
    //android annotations
    compile 'org.androidannotations:androidannotations-api:3.0'
    apt 'org.androidannotations:androidannotations:3.0'
}

def getSourceSetName(variant) {
    return new File(variant.dirName).getName();
}

android.applicationVariants.all { variant ->
    aptOutput = file("${project.buildDir}/source/apt_generated/${variant.dirName}")
    println "****************************"
    println "variant: ${variant.name}"
    println "manifest:  ${variant.processResources.manifestFile}"
    println "aptOutput:  ${aptOutput}"
    println "****************************"

    variant.javaCompile.doFirst {
        println "*** compile doFirst ${variant.name}"
        aptOutput.mkdirs()
        variant.javaCompile.options.compilerArgs += [
                '-processorpath', configurations.apt.getAsPath(),
                '-AandroidManifestFile=' + variant.processResources.manifestFile,
                '-s', aptOutput
        ]
    }
}
我可以在活动中插入视图,但它找不到MainActivity类

在我读过的无数教程中,我说我需要将生成的目录标记为源代码,但我不能用android studio 0.4.2这样做


任何帮助,谢谢

首先,忘记在Android Studio中使用
gradle
project更改注释处理的设置。Android Studio将所有构建处理委托给
gradle
,只反映状态和错误

其次,请删除在gradle中生成代码的变通方法,并开始使用Hugo Visser的
android apt
插件:

请注意如何通过插件设置正确传递安卓Annoatiton处理器的参数


成功

已在上提交工作解决方案:必须通过gradle配置源文件夹。因此,android部分的配置应如下所示:

android {
    compileSdkVersion 18
    buildToolsVersion "18.0.1"

    defaultConfig {
        minSdkVersion 7
        targetSdkVersion 18
    }

    sourceSets {
        main {
            manifest.srcFile 'src/main/AndroidManifest.xml'
            java.srcDirs = ['src/main/java', 'YOUR_OTHER_PRODUCTION_SOURCE_FOLDER']
            resources.srcDirs = ['src/main/res']
            res.srcDirs = ['src/main/res']
        }
    }
}
另外,我同意Eugen的观点,你真的应该使用新的android apt插件。这已在AA项目的基础上进行了解释。
我将添加如何在Android studio上配置AA的一部分,以澄清这一点。

谢谢,我将研究Android apt插件。事实上,有太多的观点,有些观点已经过时,要找到正确的答案可能会让人困惑。我每次都会发现一个不同的gradle代码片段,但都不起作用,所以很难找到真正的问题所在。再次感谢您的回复