Amit Kumar
Amit Kumar

Reputation: 1458

Difference between google() and maven { url 'https://maven.google.com' }

Is there any difference between google() and maven { url 'https://maven.google.com' } in build.gradle file and if there is any, what is it?

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

Upvotes: 94

Views: 72296

Answers (3)

Ruchira Randana
Ruchira Randana

Reputation: 4179

When using gradle, you can mention multiple repositories which the build tool (gradle) uses to resolve dependencies mentioned in your project.

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

In the above scenario, you're mentioning 3 repositories which gradle can use to resolve dependencies—all of which are Maven repositories.

1. jcenter()

  • Means the JCenter Maven repository.
  • This is a shortcut available in later versions of gradle

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

  • This means you are referring a Maven repo hosted at the URL which can be used by gradle to resolve the dependencies.
  • If you want, you can actually enter the URL for JCenter and this would be the same as mentioning jcenter() in the gradle file.

3. google()

  • This means the Google Maven repository
  • Similar to the notation maven(), this can be used in later versions of gradle only

Upvotes: 1

Sergio
Sergio

Reputation: 2473

Small correction to the answer above. If you try to go to https://dl.google.com/dl/android/maven2/ it gives you a 404. The correct url to google maven repository is:

https://dl.google.com/dl/android/maven2/index.html or just https://maven.google.com

Here you can check all the supported libraries and the latest versions.

Upvotes: 11

Jayson Chacko
Jayson Chacko

Reputation: 2418

The google() repository is a shortcut to Google's maven repository. It was introduced in Gradle 4.x+. The actual repository URL used is `"https://dl.google.com/dl/android/maven2/" as specified here. https://maven.google.com actually points to the same repository.

However, if you are planning to use the google() shortcut, you need Gradle 4.x+, Android Studio 3.x+ and Gradle plugin for Android 3.x+.

Upvotes: 113

Related Questions