Получение ошибки сборки при обновлении до градиента 3.3 и инструментов сборки Android 2.3.0

Я только что обновил файлы сборки

Gradle от 2.14.1 до 3.3 Android Plugin от 2.2.3 до 2.3.0

Я получаю следующую ошибку. Похоже, что некоторые плагины третьих сторон. Может ли кто-нибудь пролить свет на это? Я не могу найти что-либо в журналах изменений, связанных с этим изменением.

Возникла проблема с настройкой проекта ': apis'.

Не удалось уведомить слушателя по оценке проекта.

Команда «android» больше не включена в SDK. Любые ссылки на него (например, сторонние плагины) должны быть удалены.

Файл сборки, в который вызывается ошибка, выглядит примерно так:

apply plugin: 'android-sdk-manager' apply plugin: 'com.android.library' apply plugin: 'android-apt' android { compileSdkVersion Integer.parseInt(ANDROID_SDK_VERSION) buildToolsVersion ANDROID_BUILD_TOOLS_VERSION // Legacy apache network stack useLibrary 'org.apache.http.legacy' defaultConfig { minSdkVersion Integer.parseInt(ANDROID_MIN_SDK_VERSION) targetSdkVersion Integer.parseInt(ANDROID_SDK_VERSION) consumerProguardFiles 'proguard-rules.pro' } compileOptions { sourceCompatibility JavaVersion.VERSION_1_7 targetCompatibility JavaVersion.VERSION_1_7 } packagingOptions { exclude 'LICENSE.txt' exclude 'META-INF/LICENSE' exclude 'META-INF/LICENSE.txt' exclude 'META-INF/NOTICE' } lintOptions { abortOnError false } } ... 

Solutions Collecting From Web of "Получение ошибки сборки при обновлении до градиента 3.3 и инструментов сборки Android 2.3.0"

android-apt устарел и, согласно руководству по миграции :

Начиная с версии 2.2 Gradle для Android, все функциональные возможности, ранее предоставленные андроид-ап, теперь доступны в Android-плагине.

Вы можете удалить android-apt и следовать руководству по миграции, чтобы получить эквивалентную функциональность.

Аналогично, согласно странице sdk-manager-plugin :

Этот плагин устарел и больше не разрабатывается. Инструменты и зависимости автоматически загружаются с использованием версии 2.2.0 плагина Android Gradle или новее.

Так что его тоже можно удалить.

Хотите обобщить то, что нам нужно для обновления:

  1. Обновление до уровня 3.3 и инструментов сборки Android 2.3.0

     -classpath 'com.android.tools.build:gradle:2.2.3' +classpath 'com.android.tools.build:gradle:2.3.0' 

    а также

     -distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip 

    Они должны быть выполнены Android Studio автоматически при обновлении.

  2. Удалите android-apt и sdk-manager-plugin как было предложено @ian

     -classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8' 

    а также

     -apply plugin: 'android-sdk-manager' -apply plugin: 'com.neenbedankt.android-apt' 

    Эти плагины устарели и больше не нужны в новой версии градиента.

  3. Измените номер версии инструмента сборки в файле app / build.gradle:

     - buildToolsVersion "23.0.3" + buildToolsVersion '25.0.0' 
  4. Найдите все apt в файле gradle и замените на annotationProcessor . Например, мы используем AutoValue и Parceler, и нам нужно будет сделать это:

     - apt "com.ryanharter.auto.value:auto-value-gson:$autoValueGsonVersion" + annotationProcessor "com.ryanharter.auto.value:auto-value-gson:$autoValueGsonVersion" 

    а также

     - apt "org.parceler:parceler:$parcelerVersion" + annotationProcessor "org.parceler:parceler:$parcelerVersion" 
  5. Наконец, это также важно, чистить и перестраивать.