Как скомпилировать forked-библиотеку в Gradle?
Я хочу скомпилировать следующую библиотеку в моем проекте в build.gradle
:
https://github.com/theDazzler/Android-Bootstrap
Он разветвляется из https://github.com/Bearded-Hen/Android-Bootstrap, но никакая документация в репозитории не объясняет, как включить в проект.
Я пробовал что-то вроде этого:
compile 'com.theDazzler:androidbootstrap:+'
но gradle не удалось и показывает ошибку, что библиотека не найдена.
Изменить: Может ли кто-нибудь его разветкить и/или опубликовать?
Ответы
Ответ 1
Этот вилок не публикуется в центральном репозитории maven.
Затем вы не можете использовать импорт, например compile com.theDazzler:androidbootstrap:+
Вы должны:
- клонировать эту библиотеку локально в качестве модуля в вашем проекте
Клонировать
https://github.com/theDazzler/Android-Bootstrap/tree/master/AndroidBootstrap в папке root/module1.
root:
module1
build.gradle
app
build.gradle
settings.gradle
В вашем файле app/build.gradle вы должны добавить:
dependencies {
// Module Library
compile project(':module1')
}
Наконец, в вашем модуле 1/build.gradle вы должны проверить уровень, используемый для плагина gradle.
РЕДАКТИРОВАТЬ 31/10/2015:
Вы можете использовать другой способ добавления зависимости с проектом github, используя репозиторий github и плагин jitpack
В этом случае вы должны добавить это repo tp в свой build.gradle
repositories {
// ...
maven { url "https://jitpack.io" }
}
и зависимость:
dependencies {
compile 'com.github.User:Repo:Tag'
}
Ответ 2
Проблема в том, что theDazzler/Android-Bootstrap
был опубликован в любом месте? В любом режиме gradle/maven?
Обычный build.gradle
файл имеет раздел repositories
, который должен ссылаться на это maven repo.
Таким образом, любой проект, использующий theDazzler/Android-Bootstrap
, должен ссылаться на репо, где он опубликован, и с таким проектом, как gradle-git-repo-plugin
, вы можете опубликовать эту fork самостоятельно раздел выпуска для публикации он.
Эта задача завершается в задачу publishToGithub
, которая обрабатывает и переносит изменение. Затем вы можете запустить
gradle -Porg=layerhq -Prepo=gradle-releases publishToGithub
Вы также можете запустить
gradle -Porg=layerhq -Prepo=gradle-releases publish
чтобы выполнить выпуск в локальном репозитории github и зафиксировать его вручную.
Ответ 3
Привет, у меня была такая же проблема, но с другим проектом:)
Итак, сначала у вас должен быть код библиотеки на вашей машине dev.
Следующие шаги: добавьте новый файл с именем settings.gradle в корень вашего проекта, если его еще нет.
внутри добавьте это:
include 'AndroidBootStrap'
project('AndroidBootStrap').path = "path/to/AndroidBootstrap/AndroidBootStrapLibrary"
также добавить include для вашего корневого проекта, если его не существует.
Внутри файла build.gradle добавьте
compile project(':AndroidBootStrap')
чтобы добавить зависимость.
Как выглядит ваша структура папки:
root
YourProject
settings.gradle
YourProjectModule
build.gradle
AndroidBootStrap
AndroidBootStrapLibrary
build.gradle
В конце файлы выглядят следующим образом:
settings.gradle:
include 'AndroidBootStrap'
project('AndroidBootStrap').path = "../AndroidBootstrap/AndroidBootStrapLibrary"
include 'YourProjectModule'
build.gradle(YourModule):
...
dependencies {
...
compile project(':AndroidBootStrap')
}
Может быть, необходимо изменить какой-то момент, но я надеюсь, что вы получите эту идею!
Приветствия
Neri
Ответ 4
Это можно сделать просто с помощью Jitpack.
Шаг 1. Добавьте репозиторий JitPack в файл сборки
allprojects {
repositories {
maven { url 'https://jitpack.io' }
}
}
Шаг 2. Добавьте зависимость
dependencies {
compile 'com.github.User:Repo:Tag'
}
например: compile 'com.github.sachinvarma: JcPlayer: 0.0.1'