Как добавить исходник Fresco в другой проект через Gradle
Я могу построить Fresco из исходного кода, как указано на его официальном сайте.
Однако я не могу добавить его источник в качестве проекта в мой build.gradle
,
При попытке построить проект он выдает исключение, как показано ниже:
FAILURE: Build failed with an exception.
* What went wrong:
A problem occurred configuring project ':ReactAndroid'.
> Failed to notify project evaluation listener.
> Could not resolve all dependencies for configuration ':ReactAndroid:_debugPublish'.
> Configuration with name 'default' not found.
> Could not resolve all dependencies for configuration ':ReactAndroid:compile'.
> Configuration with name 'default' not found.
Есть ли шанс преодолеть эту проблему?
settings.gradle
файл приложения:
include ':app'
include ':fresco'
project(':fresco').projectDir = new File(rootProject.projectDir, '../fresco')
build.gradle
файл приложения:
...
dependencies {
compile fileTree(dir: "libs", include: ["*.jar"])
compile "com.android.support:appcompat-v7:27.0.+"
compile project(':ReactAndroid')
compile project(':fresco')
}
...
Некоторые объяснения:
- Фреска имеет главный
build.gradle
файл, который служит для других модулейbuild.gradle
файлы - Также он выставляет множество модулей в своем собственном
settings.gradle
файл. Я не знаю, как позвонить и использовать их.
1 ответ
Этого можно добиться с помощью сборок Gradle Composite, функции, добавленной в Gradle 3. Существует множество способов ее настройки, но для включения локальной сборки сторонней библиотеки, такой как fresco, вы можете настроить ее через cli:
./gradlew assembleDebug --include-build <path/to/local/fresco/>
Поскольку проекты хранятся отдельно, структура сборки фрески не имеет значения, и вам не нужно изменять проект реагирования. settings.gradle
или же build.gradle
, Включенная сборка обеспечит зависимость и заменит удаленную версию.