Android Studio 3.0 Beta 1: не удалось решить: com.андроид.поддержка: multidex: 1.0.2

после перехода с Android Studio 3.0 (Canary 5) на Android Studio 3.0 (Beta 1) и перехода к последнему gradle, т. е. 'com.android.tools.build:gradle:3.0.0-beta1'

когда я пытаюсь gradle sync, это ошибка, указывающая ниже.

Failed to resolve: com.android.support:multidex:1.0.2 
Failed to resolve: com.android.support:multidex-instrumentation:1.0.2 

Я проверяю на Android Studio 3.0 Canary 9-не удалось разрешить пакеты, это не решает мою проблему, так как у меня уже есть этот

    maven {
        url 'https://maven.google.com'
    }

Я удивлен, что он даже просит multidex 1.0.2, так как у меня есть только в моем строить.Gradle в

compile 'com.android.support:multidex:1.0.1'

Я проверяю с помощью ./gradlew app:dependencies | grep multidex, он показывает сбои, как показано ниже (через различные ароматы и т. д.)

+--- com.android.support:multidex-instrumentation:1.0.2 FAILED
+--- com.android.support:multidex:1.0.1
+--- com.android.support:multidex:1.0.2 FAILED
+--- com.android.support:multidex:1.0.1 -> 1.0.2 FAILED

где зависимости multidex:1.0.2 и multidex-instrumentation:1.0.2 приходит от? Как решить эту проблему?

9 ответов


по-видимому, моя проблема в том, что я должен опубликовать это:

maven {
    url 'https://maven.google.com'
}

на allprojects и не в buildscript (тонкая разница ослепила меня, где проблема), которая затем выглядит так:

allprojects {
    repositories {
        maven {
            url 'https://maven.google.com'
        }
    }
}

спасибо M D за указатели!


необходимо добавить следующее:

compile ' com.андроид.поддержка:multidex:1.0.3'

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


allprojects {
    repositories {
        google()
    }
}

работал на меня вместо

allprojects {
    repositories {
        maven {
            url 'https://maven.google.com'
        }
    }
}

Если вы находитесь в Китае, Пожалуйста, используйте

allprojects {
    respositories {
        google()
    }
}

вместо

allprojects {
    respositories {
        maven {
            url 'https://maven.google.com'
        }
    }
}

сначала вам нужно очистить проект, а затем перестроить его.

Build - - - - > Чистый Проект

Построить ----> Перестроить Проект


Если ни одно из вышеперечисленных решений не работает, добавьте mavenLocal() :

allprojects {
    repositories {
        jcenter()
               maven {
            url 'https://maven.google.com'
        }

        mavenLocal()
        google()
    }
}

для меня решением является перемещение google () пункт вверх, чтобы убедиться, что это до jcenter(). И на самом деле, я поставлю google () в первую очередь всех репозиториев.


добавление google () в мои allprojects решило мою проблему...

allprojects {
    repositories {
        jcenter()
        google()
    }
}

обновите все зависимости gradle до последней версии .. Вот оно!--1-->