Не вдалося знайти play-services-basement.aar


150

Вчора я спробував створити додаток, і все працювало чудово.

Сьогодні без жодних змін у проекті ... Раптом мене зустрічає це попереджувальне повідомлення, яке говорить мені:

Error:Could not find play-services-basement.aar (com.google.android.gms:play-services-basement:11.0.1). 
Searched in the following locations:
    https://jcenter.bintray.com/com/google/android/gms/play-services-basement/11.0.1/play-services-basement-11.0.1.aar

Хто-небудь стикається з такою ж проблемою?

Якщо ви переходите за посиланням, де шукаєте пакет, він, як правило, завантажується миттєво через браузер. Я припускаю, що щось змінилося на стороні сервера? Можливо, називання конвенцій?

Схоже, він шукає: play-services-basement.aar і замість цього отримує play-services-basement-11.0.1.aar? Чи може це бути конвенцією про іменування чи проблемою граду?


Відповіді:


358

jcenter () має дзеркала деяких бібліотек (я думаю, що це роблять навмисно), які спочатку повинні бути доступні через сховища google () або maven (). Коли збірка gradle працює, для будь-якої бібліотеки, яка використовується в проекті, перше місце, на яке потрібно звернути увагу, - це сховище, яке вказується першим у розділі repositories {..Коли дзеркало jcenter () не має випуску (наприклад, com.google.android.gms: play -services-ads: для мого випадку 15.0.1) шукає ваш gradle, збірка виходить із такою помилкою.

Отже, jcenter () повинен бути вказаний на останньому місці в repositories {..частинах, як показано нижче.

   buildscript {
    ext.kotlin_version = '1.2.50'
    repositories {
        google()
        maven {
            url 'https://maven.google.com/'
            name 'Google'
        }
        jcenter()
    }...

і

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

4
Це вирішило мої проблеми з файлами "не вдалося знайти ... aar" після оновлення до "com.google.gms: google-services: 4.0.1". Кожен раз, коли я спробую і оновлюю цю або версію Play Services, я, мабуть, стикаюся з цим типом неясної та страшної проблеми. Дякуємо, що закінчили 3-годинну полювання для вирішення цієї проблеми!
Кайл

11
кажучи, що jcenter займає останнє місце у файлі колиски - це врятує моє життя :)
salih

3
ця проблема раптом трапилася для мене, дякую стільки ур-рішення, що допоможе лише змінити порядок jcenter () на останній.
абадооз

1
щойно наткнувся на це питання.
Гадес

2
Дякую. Проект працював чудово, і раптом я зіткнувся з тим же питанням. Поставлення jcenter () до останнього вирішило проблему.
Ледачий ніндзя

14

Це божевілля!!! Я зіткнувся з тим же питанням. Збірки працювали прекрасно, а потім раптом почали провалюватися з тим же питанням. Я спробував пропозиції вище, але це не спрацювало. Нарешті, ось що для мене спрацювало:

Оновлення до останніх залежностей від бази даних:

implementation 'com.google.firebase:firebase-core:16.0.4'
implementation 'com.google.firebase:firebase-ads:17.0.0'

також рекламні послуги:

реалізація 'com.google.android.gms: play-services-ads: 17.0.0'

Примітка: при програмах play-services-ads: 17.0.0, обов’язково додайте у файл Manifest наступне: інакше програма закривається при відкритті.

<application>
    <!-- Sample AdMob App ID: ca-app-pub-3940256099942544~3347511713 -->
    <meta-data
        android:name="com.google.android.gms.ads.APPLICATION_ID"
        android:value="[ADMOB_APP_ID]"/>
</application>

Це працювало для мене. Я підкреслив над усіма ступенями залежності, що створювали мені проблеми, і була доступна нова версія. Змінив їх на найновішу версію, і вона спрацювала.
Кріс Дек

Мені довелося оновити всі залежності бази файлів, щоб успішно будувати її.
Джейсон

1
Здається, це "поточна" правильна відповідь. У багатьох випадках прийнята відповідь про переупорядкування речей просто не має значення.
Джош

6

ОНОВЛЕННЯ №2 2018/05/29

Проблема, схоже, зараз виправлена , і я все ще використовую ті самі налаштування gradle. Але я зробив ці кроки деякий час тому, я не впевнений, чи вони щось зробили, чи це проблема на стороні сервера, і вона нещодавно виправлена ​​/ оновлена. Щойно я помітив, що проблема пішла після того, як я зробив наступні кроки:

  1. Додайте наступне до рівня gradle.build's buildscript > repositoriesта на рівні проекту allprojects > repositories.

    • google()
    • maven { url 'http://jcenter.bintray.com' }
  2. Змініть класний шлях google-services на
    classpath com.google.gms:google-services:4.0.1'

  3. Синхронізувати проект з файлами Gradle



ОНОВЛЕННЯ №1 2018/05/29

Мені подолана помилка, зменшивши мої залежності від баз даних до ~ 12.0.0 в ступенях рівня додатків. Але це серйозно вплине на додаток, все ще розглядаючи можливі обхідні шляхи.



    apply plugin: 'com.android.application'
    apply plugin: 'io.fabric'
    ...
    compile 'com.google.firebase:firebase-core:12.0.0'
    compile 'com.google.firebase:firebase-database:12.0.0'
    compile 'com.google.firebase:firebase-storage:12.0.0'
    compile 'com.google.firebase:firebase-auth:12.0.0'
    compile 'com.google.firebase:firebase-crash:12.0.0'
    ...




Тут же я зазнав те саме питання, яке описав @SimbaClaws. Все склалося гладко, поки я вчора не стикався з тим же питанням.

У моєму build.gradle на рівні проекту є такі коди ,



    // Top-level build file where you can add configuration options common to all sub-projects/modules.

    buildscript {
        repositories {
            jcenter()
            maven {
                url 'https://maven.fabric.io/public'
            }
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:2.3.3'

            // NOTE: Do not place your application dependencies here; they belong
            // in the individual module build.gradle files
            //classpath 'com.google.gms:google-services:3.0.0'
            classpath 'com.google.gms:google-services:3.2.1'
            classpath 'io.fabric.tools:gradle:1.25.1'
        }
    }

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

    task clean(type: Delete) {
        delete rootProject.buildDir
    }


І такі коди для build.gradle на рівні програми



    apply plugin: 'com.android.application'
    apply plugin: 'io.fabric'

    android {
        compileSdkVersion 26
        buildToolsVersion "26.0.1"
        defaultConfig {
            applicationId "my.secret.application"
            minSdkVersion 16 // 19
            targetSdkVersion 26
            versionCode 1
            versionName "5.0.204"
            testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
    }

    dependencies {
        compile fileTree(dir: 'libs', include: ['*.jar'])
        androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
            exclude group: 'com.android.support', module: 'support-annotations'
        })

        compile 'com.google.firebase:firebase-core:15.0.2'
        compile 'com.google.firebase:firebase-database:15.0.0'
        compile 'com.google.firebase:firebase-storage:15.0.2'
        compile 'com.google.firebase:firebase-auth:15.1.0'
        compile 'com.google.firebase:firebase-crash:15.0.2'
        compile 'com.android.support:appcompat-v7:26.+'
        compile 'com.android.support:design:26.+'
        compile 'com.android.support:recyclerview-v7:26.+'
        compile 'com.android.support.constraint:constraint-layout:1.0.2'
        compile 'de.hdodenhof:circleimageview:2.2.0'
        compile 'com.android.support:palette-v7:26.+'
        compile 'com.android.support:support-v4:26.+'
        compile 'com.android.support:cardview-v7:26.+'
        compile 'com.github.bumptech.glide:glide:3.7.0'
        compile 'org.greenrobot:eventbus:3.1.1'
        testCompile 'junit:junit:4.12'
        compile 'com.crashlytics.sdk.android:crashlytics:2.9.1'
    }


    apply plugin: 'com.google.gms.google-services'


Хтось може порадити, якщо я щось пропустив? Я також все ще оглядаю можливі обходи та відповіді. ТІА!


2

Мав те саме питання, для мене жодна з згаданих тут відповідей не спрацювала. Тож я щойно оновив залежності у файлі gradle та залежно від того, яка залежність мала com.google.gms: (зберігала їх у тому ж прикладі версії 16.0.0)


1

Я також зазнав цього питання. Першопричиною я виявив, що існує непослідовна версія Gradle. У сховищі скриптів Gradle ", якщо я можу це назвати", є два модулі gradle gradle. Build.gradle (Проект: назва програми ) та build.gradle (Модуль: додаток). Переконайтесь, що класний шлях 'com.android.tools.build:gradle:3.2.1' у залежностях використовує останню і ту ж версію інструменту. Невідповідності призводять до проблем із складанням.


0

У моєму випадку щойно доданий wwwраніше URL був таким, як url "https://jitpack.io/"після цього доданий wwwпочав працювати для мене. В інших сховищах також спробуйте додати явні URL-адреси.

maven {
            url "https://www.jitpack.io/"
        }
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.