44

我正在使用带有外部 Android SDK 的 Android Studio。我已经安装了支持库和支持存储库。支持存储库位于:

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

当我向文件中的支持库添加依赖项时build.gradle,例如:

...

repositories {
    mavenCentral()
}

...

dependencies {
   compile "com.android.support:support-v4:18.0.+"
}

Android Studio 找不到支持库(无法解析符号等),Gradle 也找不到这些库:

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

如何在 Android Studio 和/或build.gradle文件中指定 Android 支持存储库的位置?

4

6 回答 6

28

您可能会遇到此错误,该错误会阻止 Android Gradle 插件自动将“Android 支持存储库”添加到 Gradle 存储库列表中。如错误报告中所述,解决方法是将目录显式添加m2repository为顶级build.gradle文件中的本地 Maven 目录,如下所示:

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/"
        }
    }
}
于 2014-08-18T14:11:35.073 回答
26

Gradle 可以使用 18.0.+ 表示法,但是它现在依赖于现在与 SDK 捆绑在一起的新支持存储库。

打开 SDK 管理器并立即在 Extras 下的第一个选项是“Android Support Repository”并安装它

于 2013-11-25T18:46:45.430 回答
11

找到了解决方案。

1) 转到 android studio/eclipse 使用的 SDK 所在的位置。如果您使用的是 Android Studio,请转到extras\android\m2repository\com\android\support\. 如果您使用的是 eclipse,请转到\extras\android\support\

2)看看你有什么文件夹,对我来说,我有 gridlayout-v7、support-v4 和 support-v13。

3)点击进入support-v4,看看下面的文件夹是什么编号,我的被命名为13.0

由于您使用的是“com.android.support:support-v4:18.0.+”,因此请更改它以反映您拥有的版本,例如我有 support-v4,所以第一部分 v4 保持不变。由于下一个路径是 13.0,请将 18.0 更改为:

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

这对我有用,希望它有帮助!

更新:

我注意到我使用错误的 SDK 设置了 android studio,这就是为什么最初难以更新的原因!路径应该是 C:\Users\Username\AppData\Local\Android\android-sdk\extras\

另请注意,如果您的 SDK 是最新的,则代码将为:

"com.android.support:support-v4:19.0.+"
于 2013-12-24T04:20:49.697 回答
4

安卓工作室 3

确保您拥有最新版本的Android Studio。创建新项目时默认包含支持库。如果您将支持库添加到没有它的项目中,那么您只需在应用模块的 build.gradle 文件中添加一行,然后同步 gradle。

构建.gradle

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

它应该就这么简单,尽管可能有一些事情需要注意:

  • 如果需要更新支持库,Android Studio 现在应该会给你一个警告。只需27.1.1将我在这里的数字更新为它告诉你的任何数字。如果需要,您还可以手动检查最新版本
  • 在 Android Studio 2.x 中使用的implementation关键字 replaces 。compile有什么区别?
  • 您可能需要包含其他支持库包,具体取决于您的应用使用的内容(例如constraint-layoutrecyclerview)。
  • 确保您拥有 SDK 管理器中所有内容的最新更新。转到工具 > SDK 管理器

文档

于 2015-05-18T05:09:28.723 回答
2

我曾经遇到过类似的问题。即使在安装了支持存储库之后,构建也会失败。

基本上问题是由于正确指定了gradle文件中指定jar文件的版本号的方式。

例如,在我的情况下,我将其设置为“compile 'com.android.support:support-v4:21.0.3+'”

删除“+”后构建成功!

于 2015-01-12T09:21:39.053 回答
-1

而不是这样做:

compile "com.android.support:support-v4:18.0.+"

做这个:

compile 'com.android.support:support-v4:18.0.+' 

为我工作

于 2018-09-10T13:01:34.813 回答