How to add Android Support Repository to Android Studio?

111,512

Solution 1

You are probably hit by this bug which prevents the Android Gradle Plugin from automatically adding the "Android Support Repository" to the list of Gradle repositories. The work-around, as mentioned in the bug report, is to explicitly add the m2repository directory as a local Maven directory in the top-level build.gradle file as follows:

allprojects {
    repositories {
        // Work around https://code.google.com/p/android/issues/detail?id=69270.
        def androidHome = System.getenv("ANDROID_HOME")
        maven {
            url "$androidHome/extras/android/m2repository/"
        }
    }
}

Solution 2

Gradle can work with the 18.0.+ notation, it however now depends on the new support repository which is now bundled with the SDK.

Open the SDK manager and immediately under Extras the first option is "Android Support Repository" and install it

Solution 3

Found a solution.

1) Go to where your SDK is located that android studio/eclipse is using. If you are using Android studio, go to extras\android\m2repository\com\android\support\. If you are using eclipse, go to \extras\android\support\

2) See what folders you have, for me I had gridlayout-v7, support-v4 and support-v13.

3) click into support-v4 and see what number the following folder is, mine was named 13.0

Since you are using "com.android.support:support-v4:18.0.+", change this to reflect what version you have, for example I have support-v4 so first part v4 stays the same. Since the next path is 13.0, change your 18.0 to:

"com.android.support:support-v4:13.0.+"

This worked for me, hope it helps!

Update:

I noticed I had android studio set up with the wrong SDK which is why originally had difficulty updating! The path should be C:\Users\Username\AppData\Local\Android\android-sdk\extras\

Also note, if your SDK is up to date, the code will be:

"com.android.support:support-v4:19.0.+"

Solution 4

Android Studio 3

Make sure you have the latest version of Android Studio. The support library is included by default when you create new projects. If you are adding the Support Library to a project that doesn't have it, then you just need to add a single line to your app module's build.gradle file, and then sync gradle.

build.gradle

dependencies {
    ...
    implementation 'com.android.support:appcompat-v7:27.1.1'
} 

It should just be that easy, though there may be some things to note:

  • Android Studio should give you a warning nowadays if the support library needs to be updated. Just update the 27.1.1 numbers that I have here to whatever it tells you to. You can also manually check what the latest revision is if you want to.
  • The implementation keyword replaces compile that was used in Android Studio 2.x. (What's the difference?)
  • There are other support library packages that you may need to include depending on what your app uses (like constraint-layout or recyclerview).
  • Make sure that you have the latest updates for everything in the SDK Manager. Go to Tools > SDK Manager.

Documentation

Solution 5

I used to get similar issues. Even after installing the support repository, the build used to fail.

Basically the issues is due to the way the version number of the jar files are specified in the gradle files are specified properly.

For example, in my case i had set it as "compile 'com.android.support:support-v4:21.0.3+'"

On removing "+" the build was sucessful!!

Share:
111,512

Related videos on Youtube

Jaap van Hengstum
Author by

Jaap van Hengstum

Updated on July 09, 2022

Comments

  • Jaap van Hengstum
    Jaap van Hengstum almost 2 years

    I'm using Android Studio with an external Android SDK. I have installed the support library and the support repository. The support repository is in:

    ~/Development/Tools/android/sdk/extras/android/m2repository
    

    When I add a dependency to the support library in the build.gradle file, like:

    ...
    
    repositories {
        mavenCentral()
    }
    
    ...
    
    dependencies {
       compile "com.android.support:support-v4:18.0.+"
    }
    

    Android Studio cannot find the support libraries (cannot resolve symbol etc) and Gradle also cannot find the libraries:

    Gradle: A problem occurred configuring project ':TestAndroidStudio'.
    > Failed to notify project evaluation listener.
       > Could not resolve all dependencies for configuration ':TestAndroidStudio:_DebugCompile'.
          > Could not find any version that matches com.android.support:support-v4:18.0.+.
            Required by:
                TestAndroidStudio:TestAndroidStudio:unspecified
    

    How do I specify in Android Studio and/or the build.gradle file the location of the Android support repository?

    • rciovati
      rciovati over 10 years
      In the local.properties file is the the right SDK path?
    • Jaap van Hengstum
      Jaap van Hengstum over 10 years
      The only line in my local.properties file is: sdk.dir=/Users/jaap/Development/Tools/android/sdk which is the path to the external sdk.
    • rciovati
      rciovati over 10 years
      Are you sure you have the support library version 18? Now it is 19.
    • Lorne K
      Lorne K about 6 years
      Anyone arriving here because they failed adding 'compile' statement to build.gradle note that there are TWO build.gradle files, and compile must be added to a dependencies section of the file that has no dependencies section (the one with targetSdkVersion = x etc)
  • Michael Barany
    Michael Barany over 10 years
    Also make sure your "Android SDK Tools" is updated and consider using "19.0.+" as that is the latest.
  • joe_deniable
    joe_deniable over 10 years
    Thanks. I was a bit stuck as well because in the online maven repository the support library is under com.google.android, but here it's under com.android.support.
  • escull638
    escull638 over 10 years
    Took me hours to figure out! Turns out it was just a simple change haha, its good that you got sorted!
  • philipp
    philipp over 9 years
    I'm adding the libs to our local maven artifactory, so it works for everyone.
  • sschuberth
    sschuberth over 9 years
    That should not be necessary anymore as at least I cannot reproduce the bug anymore with the latest Android plugin and build tools (also see my comment to the original bug).
  • DenisGL
    DenisGL almost 8 years
    This solves another issue: adding android annotation support (e.g. @NonNull) to a bare java lib of android app.
  • childno͡.de
    childno͡.de about 7 years
    still had this after upgrading to Android Studio 2.3 ... is there any info what was the cause of and how the hook in mechanism works in Android studio?! the only thing I can confirm: I can "fix" it by simply "uninstall then reinstall" the support repository via SDK manager ... no glue why this helped even the files existing and reinstalled again are exactly the same
  • AaA
    AaA almost 7 years
    My SDK folder is in drive E (C is SSD) and [SDK]\extras\android\m2repository\com\android\support\suppor‌​t-v4 contains folder numbers starting from 13.0.0 up to 26.0.0-alpha1 (38 Folders), repo is still not accessible.
  • AaA
    AaA almost 7 years
    developer.android already warned against using + in version numbers in this document
  • AaA
    AaA almost 7 years
    developer.android already warned against using + in version numbers in this document
  • AaA
    AaA almost 7 years
    developer.android warned against using + in version numbers in this document and many other places.