android 项目中项目级别 gradle 文件中的 google() 和 mavenCentral() 有什么区别?

What is the difference between google() and mavenCentral() in project level gradle file in an android project?

在项目级别,android 项目的 Gradle 文件 包含 google()mavenCentral() 在存储库块中。

buildscript {
    repositories {
        google()
        mavenCentral()
    }
    dependencies {
        classpath "com.android.tools.build:gradle:7.0.0"
    }
}

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

我看过一个相关的回答,但是里面没有关于mavenCentral()的描述。该答案基于 google() 作为 maven { url 'https://maven.google.com' } 的替代。但在我的例子中,google()mavenCentral() 都被一起使用了。

它们是不同的 Maven 工件存储库,由不同的实体托管,目的不同。

google() 是 Google 的官方 Maven 存储库,我们在其中托管 Google 第一方库。这包括 AndroidX 库、Jetpack Compose、Firebase、Play 服务 Material 等。您可以在线浏览那里托管的内容 here

Maven Central 由 Sonatype 托管,允许任何人将他们项目的工件上传到它。您可以在 here and search the repository here.

了解如何发布