Android Studio: использование AndroidAnnotations
Итак, я хотел попробовать новую студию Android и импортировать проекты eclipse (я сгенерировал файл сборки gradle). Работала неплохо.
Единственная библиотека, которая, похоже, не работает, - это AndroidAnnotations.
Я выбрал файл androidannotations-2.7.jar в разделе "Файл" > "Настройки" > "Компилятор" > "Обработка аннотаций".
Как каталог исходного источника, я выбрал "gen".
Но сгенерированный файл, такой как MainActivity_, не генерируется. Что я не так понял?
Ответы
Ответ 1
У меня были те же проблемы, что и инструкции по настройке aa с помощью intelliJ, теперь это работает как шарм.
Страница конфигурации AA intelliJ укажет вам на этот пост...
http://www.ashokgelal.com/2012/12/setting-up-intellij-idea-12-with-maven-actionbarsherlock-roboelectric-androidannotations/
... вышеприведенный пост позволяет вам настраивать различные библиотеки в intelliJ, прокручивать в направлении вниз для AA.
Главное, что я должен был сделать, что мне не нужно было делать в eclipse, это перейти в "Настройки" > "Компилятор" > "Обработчики аннотаций" и установить путь к процессу на что-то вроде...
[PATH TO AA JARS]/androidannotes.2.7.jar: [PATH TO AA JARS]/androidannotations-api-2.7.jar: [PATH TO AA БНК]/codemodel-2.4.1.jar
Ответ 2
Это то, что работает для меня:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.+'
}
}
apply plugin: 'android'
configurations {
apt
}
repositories {
mavenRepo url: 'https://oss.sonatype.org/content/repositories/snapshots/'
}
ext.androidAnnotationsVersion = '3.0-SNAPSHOT';
dependencies {
compile 'com.android.support:support-v4:18.0.+'
apt "org.androidannotations:androidannotations:$ext.androidAnnotationsVersion"
compile "org.androidannotations:androidannotations-api:$ext.androidAnnotationsVersion"
}
android {
compileSdkVersion 18
buildToolsVersion "17.0.0"
defaultConfig {
minSdkVersion 7
targetSdkVersion 18
}
}
android.applicationVariants.all { variant ->
ext.aptOutput = file("${project.buildDir}/source/apt_generated/${variant.dirName}")
ext.aptOutput.mkdirs()
variant.javaCompile.options.compilerArgs += [
'-processorpath', configurations.apt.asPath,
'-AandroidManifestFile=' + variant.processResources.manifestFile,
'-s', ext.aptOutput
]
}
После этого мне нужно пометить build/sources/apt-generated/debug
как источник в Android Studio, щелкнув его правой кнопкой мыши и выбрав Mark Directory as
> Source Root
Ответ 3
Если у вас нет проблем с компиляцией и сразу после просмотра сгенерированных классов в среде IDE, вам нужно проверить, проверяется ли целевые/сгенерированные источники/аннотации как исходная папка.
Это будет файл > Структура проектa > Модули > вкладка "Источники", затем найдите папку и пометьте ее как "Источники". Папка станет синей и будет указана в списке исходных папок.
Ответ 4
Поскольку Android Studio основана на IntelliJ, вы попытались выполнить руководство по настройке на вики-платформе AndroidAnnotation?
Если вы используете gradle, вы должны проверить эту страницу, в которой объясняется, как настроить плагин AndroidAnnotation:
buildscript {
repositories {
mavenCentral()
}
def gradleAndroidAnnotationsPluginVersion = '0.3.0'
dependencies {
classpath "net.ealden.gradle.plugins:gradle-androidannotations-plugin:$gradleAndroidAnnotationsPluginVersion"
}
}
apply plugin: 'androidannotations'
apply plugin: 'idea'
androidAnnotationsVersion = '2.2'
Я еще не пробовал эту новую IDE. Я скоро проверю.
Ответ 5
Кажется, есть способ заставить Android Studio работать с AndroidAnnotations
http://code.google.com/p/android/issues/detail?id=55764
Ответ 6
Если вы попытаетесь использовать Android Studio с проектом под управлением Android Annotations, вы можете столкнуться с проблемой критического компилятора:
неправильно введенные данные, найденные для элемента аннотации public abstract int com.googlecode.androidannotations.annotations.EActivity.value() (Найдено данные типа int)
Проблема заключается в том, что класс R не найден. Android Studio не помещает R.java в каталог gen по умолчанию, как eclipse. Решение состоит в том, чтобы перейти в Настройки проекта → Границы → Выберите фасет Android для вашего проекта → вкладка Компилятор и изменить "файлы R.java и Manifest.java" из "Запустить ресурсы процесса Maven перед Make" "Сгенерировано IDE".