Как получить зависимость одного файла aar от другого файла aar?

Я разработчик плагинов, мой плагин зависит от двух aar библиотек. Когда я экспортирую в виде архива aar, мои зависимые библиотеки не являются его частью. Структура моего проекта приведена ниже.

App  
lib1  
 --aartool   
lib2   
lib3

lib1 имеет зависимость от файлов lib2, lib3 и aartool. App имеет aar зависимость от lib1.

Lib1 с использованием некоторых настраиваемых компонентов из aartool после этого lib1 как преобразованного в aar и использованного в application. Но любой файл, к которому мы обращались из aartool, недоступен в application и throwing classnotfoundException

Есть ли способ реализовать эти зависимости как aar?

Мне всегда нужно переносить lib1 aar в приложение, я не хочу переносить все остальные зависимости.


person learner    schedule 30.12.2015    source источник
comment
привет кто-нибудь посмотрите на это, пока жду ответа   -  person learner    schedule 31.12.2015
comment
Голосующие против, пожалуйста, дайте ценный отзыв.   -  person learner    schedule 02.01.2016
comment
Пожалуйста, дайте более подробную информацию, например. файлы градиента.   -  person Henry    schedule 02.01.2016
comment
вы используете Gradle или настройку зависимости от eclipse? Минусы, вероятно, из-за отсутствия подробностей   -  person Blundell    schedule 02.01.2016
comment
@henry обновил мои данные настолько, насколько я мог.   -  person learner    schedule 02.01.2016
comment
Lib1 использует некоторые настраиваемые компоненты из aartool, который преобразуется в lib1aar и используется в приложении — это предложение очень неясно (это даже недопустимый английский язык). Кроме того, это единственное место во всем вопросе, где упоминается lib1aar, поэтому никто понятия не имеет, что такое lib1aar. Честно говоря, этот вопрос должен был быть закрыт, поскольку он не предоставляет минимальный, полный и поддающийся проверке пример.   -  person CommonsWare    schedule 06.01.2016
comment
@CommonsWare обновил вопрос, который вы не поняли.   -  person learner    schedule 06.01.2016
comment
Это не особо помогло. Понятно, что вы думаете, что lib1 чем-то отличается от lib2. Эта разница, похоже, как-то связана с aartool. Но никто почти ничего не знает о lib1, или lib2, или aartool. Мое единственное предложение - убедиться, что lib1 в его POM имеет зависимость от aartool. Кроме того, вам нужно найти местного консультанта, который может подписать NDA и увидеть, о чем вы говорите.   -  person CommonsWare    schedule 06.01.2016
comment
@CommonsWare касается не проблемы с кодом, а проблемы зависимости. Не имеет значения имя, которое я дал для библиотеки. Моя основная проблема заключается в том, что при создании библиотеки у меня есть зависимость от некоторых других библиотек. Когда я предоставляю свою библиотеку клиенту, в то время как зависимые библиотеки не являются ее частью (некоторые другие библиотеки) .   -  person learner    schedule 06.01.2016
comment
Зависимость библиотек от других библиотек работает из коробки. Вы делаете это каждый раз, когда зависите от support-v13 или appcompat-v7, или большинства других основных библиотек поддержки Android, которые обычно имеют транзитивную зависимость от support-v4. Следовательно, где-то в lib1 или aartool у вас есть ошибка, возможно, в модуле build.gradle. Но мы не можем вам в этом помочь, так как не видим эти файлы. Вам нужно найти местного консультанта, который может подписать NDA и увидеть, о чем вы говорите.   -  person CommonsWare    schedule 06.01.2016


Ответы (1)


Я не уверен, что понимаю это правильно, но я считаю, что вам просто нужно добавить транзитивные зависимости, такие как в этом вопросе или в этом .

Пример:

compile ('com.foo:FOO:1.0.0@aar'){
       transitive=true
}

Если у вас циклические зависимости, вы можете столкнуться с серьезными проблемами! Я настоятельно рекомендую вам исправить это.

person sschrass    schedule 02.01.2016
comment
я пробовал переходный метод, но зависимости не являются частью моего аара - person learner; 08.01.2016