【问题标题】:Gradle does not resolve support libraryGradle 不解析支持库
【发布时间】:2013-12-24 13:31:14
【问题描述】:

我正在尝试使用名为 BetterPickers 的库,但甚至无法编译我的项目。

gradle.build 包含这个:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.7.+'
    }
}
apply plugin: 'android'

repositories {
    mavenCentral()
}

android {
    compileSdkVersion 19
    buildToolsVersion '19.0.0'

    defaultConfig {
        minSdkVersion 7
        targetSdkVersion 19
    }
    buildTypes {
        release {
            runProguard false
            proguardFile getDefaultProguardFile('proguard-android.txt')
        }
    }
    productFlavors {
        defaultFlavor {
            proguardFile 'proguard-rules.txt'
        }
    }
}

dependencies {
    compile 'com.android.support:support-v4:18.0.+'
    compile 'com.nineoldandroids:library:2.4.0'
    compile 'com.doomonafireball.betterpickers:library:1.4.2'
}

但我不断收到此错误: 配置项目 ':App' 时出现问题。

无法解析配置“:App:_defaultFlavorDebugCompile”的所有依赖项。 找不到 com.google.android:support-v4:18。 要求: MyProject:App:unspecified > com.doomonafireball.betterpickers:library:1.4.2

我确实从他们的存储库中复制了 Gradle 依赖项。而且,即使我只保留 BetterPickers 依赖项,我仍然会遇到同样的错误。

【问题讨论】:

  • 由于 support-v4 来自您本地的 Android SDK 存储库,您通过 SDK 管理器下载了哪个版本?
  • 最新的。支持库版本。 19.0.1,支持存储库版本。 3.

标签: android dependencies gradle


【解决方案1】:

您必须从 Android SDK 管理器安装“Android Support Repository”和“Google Repository”才能使用支持库

【讨论】:

  • Android 支持库 现在称为支持库的本地 Maven 库。它位于 Extras 部分。 Google Repository 不是必需的,除非您希望使用 Google 的任何非免费库(Play、Android Auto)。
【解决方案2】:

构建脚本指示 Gradle 从 Maven Central 获取 com.android.support:support-v4:18.0.+。但是,Maven Central 没有这样的库(版本)。因此出现错误。

据我所知,Gradle Android 插件会自动处理这种依赖关系,并且不必显式声明。

betterpickers 不仅声明了对support-v4 的依赖,还使用了旧的apklib 库格式。据我所知,Gradle Android 插件只支持较新的aar 格式。这可能是您的问题的原因。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-05-20
    • 1970-01-01
    • 1970-01-01
    • 2018-03-09
    • 2021-06-12
    • 2018-05-29
    • 1970-01-01
    • 2013-05-20
    相关资源
    最近更新 更多