Відповіді:
android-apt
Плагін застарів .
Ознайомтесь з посібником з міграції :
Що стосується плагіну Android Gradle версії 2.2, то вся функціональність, яку раніше забезпечував android-apt, тепер доступна в плагіні Android.
Ви можете видалити android-apt
, дотримуючись посібника з міграції, щоб отримати еквівалентні функціональні можливості.
Важливі частини міграційного посібника :
- Переконайтеся, що у вас є плагін Android Gradle 2.2 або новіший.
- Видаліть
android-apt
плагін зі своїх сценаріїв побудови- Змініть всі
apt
,androidTestApt
іtestApt
залежно в їхньому новому форматі:
dependencies {
compile 'com.google.dagger:dagger:2.0'
annotationProcessor 'com.google.dagger:dagger-compiler:2.0'
}
Також у плагіні Android Gradle є чітка перевірка цього, що саме ви бачите:
використання несумісних плагінів для обробки анотацій android-apt
Майбутні версії плагінів Android Gradle не будуть сумісні із способом android-apt
роботи, що є причиною цієї перевірки.
android-apt
роботи, що є причиною цієї перевірки.
Для мене у мене виникла ця помилка під час використання Vault
бібліотеки Contentful, яка визначає, що ви включаєте:
apply plugin: 'com.neenbedankt.android-apt'
і
compile 'com.contentful.vault:core:2.1.0'
apt 'com.contentful.vault:compiler:2.1.0'
Що вам потрібно зробити, це ВИДАЛИТИ apply plugin: 'com.neenbedankt.android-apt'
а потім змінити :
compile 'com.contentful.vault:core:2.1.0'
apt 'com.contentful.vault:compiler:2.1.0'
до
annotationProcessor 'com.contentful.vault:compiler:2.1.0'
annotationProcessor 'com.contentful.vault:core:3.0.1'
Ви завжди можете перевірити https://github.com/contentful/vault на наявність останніх версій
Видаліть плагін
Змінити:
apt -> компілювати
testApt -> testAnnotationProcessor
androidTestApt -> androidTestAnnotationProcessor
У своєму build.gradle (додаток) додайте до defaultConfig:
vectorDrawables.useSupportLibrary = вірно
Piggybacking на @Gabriele Mariotti тут, оскільки його відповідь є досить точним і передбачає це, але не зазначає цього. Gradle також не пропонує це як допустимий варіант, хоча він також є. Еквівалент тестування для androidTestApt
та testApt
є androidTestAnnotationProcessor
та testAnnotationProcessor
.
Приклад:
testApt "com.google.dagger:dagger-compiler:$daggerVersion"
androidTestApt "com.google.dagger:dagger-compiler:$daggerVersion"
Слід змінити на
testAnnotationProcessor "com.google.dagger:dagger-compiler:$daggerVersion"
androidTestAnnotationProcessor "com.google.dagger:dagger-compiler:$daggerVersion"