2013-07-27 139 views
38

非常简单的问题 - 如何将gradle Android项目添加commons-io依赖项?在Android Studio中为gradle项目添加commons-io依赖项

我尝试以下

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

apply plugin: 'android' 

dependencies { 
    compile files('libs/android-support-v4.jar') 
    compile group: 'commons-io', name: 'commons-io', version: '2.0.1' 
} 

,但它不工作 的错误是

摇篮:发生配置项目的问题 ':LearnIt'。

无法通知项目评估侦听器。 无法解析配置':LearnIt:_DebugCompile'的所有依赖关系。 >找不到commons-io:commons-io:2.0.1。 必选: learnit:LearnIt:未指定

+0

如果有人需要所有阿帕奇百科全书库 - http://mvnrepository.com/artifact/org.apache.commons – Jaydev

回答

40

你需要声明一个仓库要解决的(如MavenCentral)公地IO库:

buildscript { 
    repositories { 
     mavenCentral() 
    } 

    dependencies { 
     classpath 'com.android.tools.build:gradle:0.5.+' 
    } 
} 

apply plugin: 'android' 

repositories{ 
    mavenCentral() 
} 

dependencies { 
    compile files('libs/android-support-v4.jar') 

    compile group: 'commons-io', name: 'commons-io', version: '2.0.1' 
}  
+1

我想我已经在我的代码中有mavenCentral了! –

+0

请参阅buildscript { 存储库{ mavenCentral() } –

+3

您已将它配置在'buildScript'内,但不在构建文件本身内。 'buildScript'用于声明自定义任务本身所需的附加依赖项,而不是正在构建的项目所需的依赖项。另请注意,Rene是一名Gradle提交者。他知道他在说什么。请参阅http://www.gradle.org/docs/current/userguide/organizing_build_logic.html#sec:external_dependencies –

56

截至目前( 2014年5月)如果您使用默认生成的项目,它实际上非常简单(虽然很难找到说明!

打开第二级 build.gradle,并添加f ollowing行至dependencies {

compile "commons-io:commons-io:+" 

这将获得最新版本的commons-io。我的完整文件如下所示:

apply plugin: 'android' 

android { 
    compileSdkVersion 19 
    buildToolsVersion "19.0.0" 

    defaultConfig { 
     minSdkVersion 18 
     targetSdkVersion 19 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      runProguard false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' 
     } 
    } 
} 

dependencies { 
    compile "commons-io:commons-io:+" 
} 
+0

这很好 - 将IOUtils作为项目的一部分非常有用。 – MikeV

+1

感谢这一点,但不要在依赖关系中使用+运算符。这对于版本差异是不利的。 – okarakose

+0

它有利有弊。 – Timmmm

23

使用gradlePlease获取依赖关系。

以下内容添加到您的应用程序/文件的build.gradle:

dependencies { 
    compile 'org.apache.commons:commons-io:1.3.2' 
} 
+0

对于jar下载非常有用http://gradleplease.appspot.com/ –

+0

- > https://commons.apache.org/proper/commons-io/download_io.cgi – CrandellWS

相关问题