Как настроить файл Build.gradle для включения библиотеки boofcv в проект для android studio?
Я новичок в Android Studio и хочу включить библиотеку Boofcv в мой проект. Я использую Android studio для разработки. Я сделал следующие шаги для включения библиотеки и застрял в конфигурации build.gradle.
Шаг 1: Загрузите скомпилированные файлы JAR с http://boofcv.org/index.php?title=Download:BoofCV
Шаг 2. Обновите settings.gradle как
include ':app'
include ':libs:boofcv-libs'
Шаг 3: Мой build.gradle выглядит так:
apply plugin: 'com.android.application'
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.2.3'
}
}
allprojects {
repositories {
jcenter()
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
}
3 ответа
Как примечание вашего проекта build.gradle
файл предложит:
// ПРИМЕЧАНИЕ: не размещайте здесь зависимости вашего приложения; они принадлежат
// в отдельных файлах build.gradle модуля
Удалите операторы компиляции в этом файле Gradle:
compile project(":libs:boofcv-libs")
И скопировать их в другие (модули) build.gradle
и сделать зависимости похожими на это:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:support-v4:20.+'
compile project(":libs:boofcv-libs")
}
BoofCV находится на Maven Central, так что вы можете просто сделать следующее:
['calibration','feature','geo','ip','recognition','sfm','android'].each
{ String a -> compile group: 'org.boofcv', name: a, version: '0.18' }
В следующем будет еще проще, если вы просто хотите всего:
compile group: 'org.boofcv', name: "all", version: '0.19-SNAPSHOT'
- Получить последнюю версию с этой страницы https://boofcv.org/index.php?title=Download
- Преобразуйте maven в gradle, используя этот веб-сайт, и обязательно измените artifactId на boofcv-android: http://sagioto.github.io/maven2gradle
так будет примерно так:
compile "org.boofcv:boofcv-android:0.27"
как уже упоминалось на этой странице, чтобы избежать конфликта библиотек, добавьте это в app.gradle:
// Remove libraries that conflict with libraries already included with Android
configurations {
all*.exclude group: "xmlpull", module: "xmlpull"
all*.exclude group: "org.apache.commons", module: "commons-compress"
}