【发布时间】:2014-01-31 18:15:03
【问题描述】:
我正在尝试将 AndroidAnnotations 添加到具有 gradle 构建系统的 Android Studio 项目中。有人做过吗?谁能帮我这个?我什至不知道从哪里开始。我知道如何将库添加到 gradle 但 AndroidAnnotations 需要 2 个 jar 文件,我不知道该怎么做。
【问题讨论】:
标签: android annotations gradle android-studio
我正在尝试将 AndroidAnnotations 添加到具有 gradle 构建系统的 Android Studio 项目中。有人做过吗?谁能帮我这个?我什至不知道从哪里开始。我知道如何将库添加到 gradle 但 AndroidAnnotations 需要 2 个 jar 文件,我不知道该怎么做。
【问题讨论】:
标签: android annotations gradle android-studio
After 4 months I am 4 months older and a little smarter :) If you want to use
Annotations in Android use http://jakewharton.github.io/butterknife/.
It is way better and it is easy to set up :)
这是你需要做的:
首先添加匕首和注释版本。您也可以在依赖项中声明它们。当您有很多依赖项时,这会更方便。
ext.daggerVersion = '1.0.0';
ext.androidAnnotationsVersion = '2.7.1';
configurations {
apt
}
添加依赖:
dependencies {
apt "com.googlecode.androidannotations:androidannotations:${androidAnnotationsVersion}"
compile "com.googlecode.androidannotations:androidannotations-api:${androidAnnotationsVersion}"
apt "com.squareup.dagger:dagger-compiler:${daggerVersion}"
compile "com.squareup.dagger:dagger:${daggerVersion}"
}
最后,添加这个。这将为编译器添加路径并为生成的文件创建一个目录(此目录将被称为 apt_generated):
android.applicationVariants.each { 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
]
}
}
哦,是的,构建应用程序后,您需要转到项目根目录/build/apt_generated,右键单击文件夹并设置“标记为源根目录”
【讨论】: