Добавьте команду commons-io в проект gradle в Android Studio
Очень простой вопрос - как добавить зависимость от сообщества-io от проекта gradle Android?
Я попробовал следующее
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'
}
но он не работает
Ошибка
Gradle: возникла проблема с настройкой проекта ': LearnIt'.
Не удалось уведомить слушателя по оценке проекта. Не удалось разрешить все зависимости для конфигурации ': LearnIt: _DebugCompile'. > Не удалось найти commons-io: commons-io: 2.0.1. Требуется: learnit: LearnIt: не определено
Ответы
Ответ 1
вам нужно объявить репозиторий, где вы хотите разрешить библиотеку commons-io (например, MavenCentral):
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'
}
Ответ 2
На данный момент (май 2014 года), если вы используете созданный по умолчанию проект, это на самом деле удивительно просто (хотя трудно найти инструкции!
Откройте второй уровень build.gradle и добавьте следующую строку в 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:+"
}
Ответ 3
Используйте gradlePlease, чтобы получить зависимость.
Добавьте в файл app/build.gradle следующее:
dependencies {
compile 'org.apache.commons:commons-io:1.3.2'
}