Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android studio 方形匕首:如何配置Android Studio?_Android Studio_Installation_Code Generation_Dagger - Fatal编程技术网

Android studio 方形匕首:如何配置Android Studio?

Android studio 方形匕首:如何配置Android Studio?,android-studio,installation,code-generation,dagger,Android Studio,Installation,Code Generation,Dagger,如何配置Android Studio项目以使用Square Dagger?我在Eclipse中运行了它,但我完全不知道如何设置Android Studio来进行注释和代码生成 编辑:我的构建.gradle: apply plugin: 'com.android.application' apply plugin: 'com.neenbedankt.android-apt' android { compileSdkVersion 21 buildToolsVersion "20.

如何配置Android Studio项目以使用Square Dagger?我在Eclipse中运行了它,但我完全不知道如何设置Android Studio来进行注释和代码生成

编辑:我的构建.gradle

apply plugin: 'com.android.application'
apply plugin: 'com.neenbedankt.android-apt'

android {
    compileSdkVersion 21
    buildToolsVersion "20.0.0"

    defaultConfig {
        applicationId "com.test.myapp"
        minSdkVersion 18
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

configurations {
    apt
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.google.android.gms:play-services:6.1.71'
    compile 'com.android.support:support-v4:21.0.2'
    apt "org.androidannotations:androidannotations:3.2"
    compile "org.androidannotations:androidannotations-api:3.2"
    apt 'com.squareup.dagger:dagger-compiler:1.2.2'
    compile 'com.squareup.dagger:dagger:1.2.2'
    compile 'javax.inject:javax.inject:1'
}

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

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

    android.sourceSets[getSourceSetName(variant)].java.srcDirs+= aptOutput.getPath()

    variant.javaCompile.options.compilerArgs += [
            '-processorpath', configurations.apt.getAsPath(),
            '-AandroidManifestFile=' + variant.processResources.manifestFile,
            '-s', aptOutput
    ]

    variant.javaCompile.source = variant.javaCompile.source.filter { p ->
        return !p.getPath().startsWith(aptOutputDir.getPath())
    }

    variant.javaCompile.doFirst {
        aptOutput.mkdirs()
    }
}

试试下面的apt插件——它对我们有用

        com.jimdo.gradle:gradle-apt-plugin:0.2-SNAPSHOT
在buildscript存储库中添加

maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' }
classpath 'com.jimdo.gradle:gradle-apt-plugin:0.2-SNAPSHOT'
在buildscript依赖项闭包中添加

maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' }
classpath 'com.jimdo.gradle:gradle-apt-plugin:0.2-SNAPSHOT'
然后在你的应用程序build.gradle中

apply plugin: 'apt'
你已经在你的apps dependencies闭包中获得了dagger的compile和apt依赖项,所以你应该可以开始了。我不确定apt对
org.android注释:android注释:3.2
的依赖是什么。如果你把它放在支持你的apt解决方案中,你可能会把它取出来