Ionic3 Build-Error:找不到play-services-auth-base.aar(15.0.1)

时间:2018-05-28 10:16:25

标签: android cordova ionic-framework gradle ionic3

我有一个更大的Ionic3项目正在运行,并且自上次成功构建以来没有做任何更改。今天,我试图再次构建,得到错误:

Could not find play-services-auth-base.aar (com.google.android.gms:play-services-auth-base:15.0.1).

我无法弄清楚为什么会这样。 Cordova-platform是版本6.3.0。

到目前为止已完成的步骤:

  • 已安装cordova-android-play-services-gradle-release,其中15. +为版本期间的版本

  • 已安装cordova-android-support-gradle-release,其中27. +为构建期间的版本

  • 在平台内操作gradle.build,如其他stackoverflow-questions中所建议的那样。

  • 也许将cordova更新为7.x也是一个选项,但我想避免它,因为多个cordova插件依赖。

代码:

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

4 个答案:

答案 0 :(得分:15)

jcenter()存储库目前存在问题。我想他们很快就会解决这个问题。

无论如何,对于大多数软件包,修复可能是在build.gradle文件的第一个位置添加google()存储库:

buildscript {
  repositories {
    google()
    jcenter()
  }
}

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

在jcenter()之前列出google()非常重要。

答案 1 :(得分:3)

如果您的应用不需要任何较新的Google API,请尝试在config.xml文件中指定较旧的Play服务版本。我使用11.6.2获得了成功的构建。任何更新的东西给了我相同的构建错误。

答案 2 :(得分:1)

根据这个:https://developer.android.com/topic/libraries/support-library/setup

如果您使用的Gradle版本低于4.1,则必须使用

maven { url 'maven.google.com'; }

而不是

google()

答案 3 :(得分:0)

据我所知,当Google或其他任何人将存储库“ google-cache”标记为“ blacked-out”时,也会发生此错误。然后,您将得到一个代表该错误的json字符串,而不是获取所需的库。似乎对于Android Studio而言,这足以说出“确定,找到了一个库条目,但不存在”的信息,因此构建将失败。 google()或maven()应该提供一个备份条目,但是因为jcenter()是列表中的第一个存储库,并且给出了请求gradle的“正确答案”,所以不会要求其他存储库提供解决方案。

@Manuel已经发布,只需将google()存储库放在项目build.gradle中的jcenter()之前。