it-swarm.com.ru

Ionic Не удалось найти support-vector-drawable.aar

У меня была странная проблема с моим приложением Ionic, я вчера смог собрать очень хорошо, но в одном из них он загрузил кучу файлов, как при сборке Android, а затем я получил следующую ошибку:

Не удалось найти support-vector-drawable.aar (com.Android.support:support-vector-drawable:27.1.1). Искал в следующих местах: https://jcenter.bintray.com/com/Android/support/support-vector-drawable/27.1.1/support-vector-drawable-27.1.1.aar

При переходе по ссылке https://jcenter.bintray.com/com/Android/support/support-vector-drawable/27.1.1/support-vector-drawable-27.1.1.aar на странице появляется следующий JSON:

{
  "errors": [
    {
      "status": 404,
      "message": "Could not find resource"
    }
  ]
}
7
Joe Scotto

Рад, что я не единственный. Это случилось со мной тоже.

В прошлом мне приходилось использовать плагин cordova-Android-support-gradle-release для обработки конфликтов с разными плагинами, использующими разные версии библиотек поддержки Android. Я использовал этот плагин Cordova с версией 27.+. Изменение этого параметра для принудительной установки версии 27.1.0 привело к тому, что у меня все снова заработало. (Команда для добавления этого плагина приведена ниже).

cordova plugin add cordova-Android-support-gradle-release  --variable Android_SUPPORT_VERSION=27.1.0

Очевидно, было бы приятно узнать, почему этот файл 27.1.1 пропал сегодня, что позволило бы продолжать использовать 27. +. Однако, надеюсь, это заставит вас снова бежать.

---- 6/6/2019 Обновление: ----

Эта проблема была решена в моем проекте за последние 4 месяца. Тогда сегодня это вернулось. По какой-то причине файл cordova-Android-support-gradle-release .gradle не добавлялся в сборку (хотя другие были). Я следовал за ответом @Moofish и удалил/переустановил плагин (снова 27.1.0). Затем сборки начали работать снова. Для меня это обновление плагина cordova-Android-support-gradle-release с @1.4.4 до @2.0.1. Не уверен, что это случайность или предсказуемая вещь.

7
BRass

Я оставлю другое решение от BRass 'на тот случай, если вы не захотите поиграть со своими плагинами или версиями поддержки Android.

У нас были те же самые ошибки при попытке создать наше приложение, и мы решили их, добавив обработчик скриптов в after_platform_add, чтобы переупорядочить список репозиториев в файле build.gradle, чтобы проект искал .aar в другом месте.

// Add <hook src="path/to/after_platform_add.js" type="after_platform_add" /> to your config.xml

var fs = require('fs');

module.exports = function(ctx) {
    var gradlePath = './platforms/Android/build.gradle';
    var gradleFile = fs.readFileSync(gradlePath, 'ascii');
    if (ctx.opts.platforms[0].indexOf('Android') !== -1) {
        gradleArray = gradleFile.split('\n');
        for (var i = 0; i < gradleArray.length; i++) {
            if (gradleArray[i].includes('jcenter()') && gradleArray[i + 1].includes('maven')) {
                var jcenter = gradleArray.splice(i, 1)[0];
                gradleArray.splice(i + 3, 0, jcenter);
            }
        }
        gradleFile = gradleArray.join('\n');
        fs.writeFileSync(gradlePath, gradleFile);
        console.log('Reordered repositories');
    }
}
1
Joao

Попробуйте изменить build.gradle на платформах и в app/build.gradle:

{
        mavenCentral()
        google() // Add this
        jcenter()
        maven {
            url "https://maven.google.com"
        }
    }
1
bECkO

У меня была та же проблема, и я уже установил плагин cordova-Android-support-gradle-release, поэтому я удалил плагин (ionic cordova plugin rmcordova-Android-support-gradle-release) и снова установил плагин (cordova plugin add cordova-Android-support-gradle-release --variable Android_SUPPORT_VERSION=27.1.0), эмм ... и он заработал!

1
Moofish