android - 在 Gradle 中添加依赖项

标签 android maven gradle android-gradle-plugin

我正在尝试使用 Gradle 将我的 Android 项目从 IDEA 移动到 Android Studio。 但是,我在依赖项方面遇到了困难。我删除了我的“lib”目录,因此可以从 maven 中检索这些 jar 。但是我该如何正确添加它们呢?

例如org.apache.commons.lang3

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

dependencies {
    compile 'com.google.android.gms:play-services:4.1.+'
    compile 'org.apache.commons:commons-lang3:2.6.+'
}

android {
    compileSdkVersion 19
    buildToolsVersion "19.0.1"

    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src']
            resources.srcDirs = ['src']
            aidl.srcDirs = ['src']
            renderscript.srcDirs = ['src']
            res.srcDirs = ['res']
            assets.srcDirs = ['assets']
        }

        // Move the tests to tests/java, tests/res, etc...
        instrumentTest.setRoot('tests')

        // Move the build types to build-types/<type>
        // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
        // This moves them out of them default location under src/<type>/... which would
        // conflict with src/ being used by the main source set.
        // Adding new build types or product flavors should be accompanied
        // by a similar customization.
        debug.setRoot('build-types/debug')
        release.setRoot('build-types/release')
    }
}

这导致:

Failed to refresh Gradle project 'idoms-android'
         Could not find commons:commons-lang3:3.0.

虽然它似乎在 Maven 存储库中。

最佳答案

你在顶层错过了这个(即 androiddependencies 的对等体):

repositories {
    mavenCentral()
}

buildscript block 具有用于构建过程存储库依赖项。您还需要位于顶层的 repositoriesdependencies 用于项目本身的依赖项。

关于android - 在 Gradle 中添加依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21561637/

相关文章:

c# - Android HTTP 到 C# 服务器

java - 无法使用Tomcat和Maven的tomcat7-websocket插件启动WebSocket容器

eclipse - Maven - 为什么在 "mvn clean"之后我需要在 "Maven Update Project"之前执行 "mvn package"?

scala - 没有此类属性: useAnt for class: org. gradle.api.tasks.scala.ScalaCompileOptions

gradle - 如何替换 gradle 的默认源文件夹?

android - 如何在具有多种口味的应用程序上为 Jenkins 建立dexguard?

android - Google play - 如何识别用户要求退款的订单号

android - 我应该在 imeActionId 上放什么?

java - 为什么我会收到 java.lang.Exception : No runnable methods exception in this test class?

Android - 使用 LocationManager.requestLocationUpdates 时,我需要 WakeLock 吗?