Gradle 2.0.0-бета4 делает Android Аннотации не работает
С 'com.android.tools.build:gradle:1.5.0'
а также 'com.neenbedankt.gradle.plugins:android-apt:1.8'
AndroidAnnotation хорошо работает с обработкой аннотации. Но после обновления до 'com.android.tools.build:gradle:2.0.0-beta4'
для мгновенного запуска кажется, что AndroidAnnotation не может генерировать @EApplication. Есть ли способ это исправить?
1 ответ
Вы должны использовать AA 4.0-SNAPSHOT для этого.
Добавить репозиторий для снимков AA:
repositories {
maven { url 'https://oss.sonatype.org/content/repositories/snapshots' }
}
Изменить версию AA на 4.0-SNAPSHOT
dependencies {
compile "org.androidannotations:androidannotations-api:4.0-SNAPSHOT"
apt "org.androidannotations:androidannotations:4.0-SNAPSHOT"
}
добавлять library:true
в apt
аргумент:
apt {
arguments {
androidManifestFile variant.outputs[0].processResources.manifestFile
resourcePackageName android.defaultConfig.applicationId
//only for Android Annotations 4.0-SNAPSHOT
library 'true'
}
}
Таким образом, АА не проверяет наличие EApplication
, EActivity
и т.д. в вашем манифесте, следовательно, он будет компилироваться с Instant Run. Причина в том, что Instant Run изменяет класс вашего приложения в манифесте, поэтому AA не может найти сгенерированный в нем.
Обновление: AA 4.0-SNAPSHOT является модульным, что означает, что вы должны добавить клиентский модуль AA REST также в ваш build.gradle
org.androidannotations:rest-spring:4.0-SNAPSHOT
org.androidannotations:rest-spring-api:4.0-SNAPSHOT
И вы должны изменить импорт аннотации REST на org.androidannotations.rest.spring.annotations.*
,