Как включить зависимость библиотечного модуля в проект Android Studio?

я переношу проект из Eclipse в AndroidStudio. У меня есть проект, используемый в качестве lib в этом проекте. Этот lib называется PullToRefresh.

Я пробовал много способов импортировать этот проект в AS, но все, что я пытаюсь, работает.

В моем проекте у меня есть такая структура папок:

Project Root
+-- app
|   +-- builds
|   +-- libs
|   |   +-- PullToRefresh (my lib project)
|   +-- src
|   |   +-- main (java code and resources)

в построении.Gradle, а я пытался сделать это:

dependencies {
    compile project(":libs:PullToRefresh")
}

но я получаю это сообщение об ошибке:

Gradle 'my_project' project refresh failed: Project with path ':libs:PullToRefresh'
could not be found in project ':app'

2 ответов


Android Studio работает на концепция, все ваши модули должны находиться внутри корневого каталога (каталога проекта). Один модуль можно зависеть от других модуля / модулей. Ваши библиотеки рассматриваются как разные модули в рамках одного проекта, и ваш основной модуль (приложение в вашем случае) зависит от них.

измените структуру проекта немного:

Project Root
+-- libs
    +-- PullToRefresh (my lib project)
+-- app
|   +-- builds
|   +-- src
|   |   +-- main (java code and resources)
    +-- .....
+--settings.gradle

в своем settings.gradle

include ':libs:PullToRefresh'

ваши построения.Gradle в выглядеть нормально. Я предлагаю вам изменить имя каталога с libs на library, потому что используйте libs для зависимости jar, а не для зависимостей модулей.

и сохраните это в сборке вашего основного модуля.файл gradle:

dependencies {
    compile project(":libs:PullToRefresh")
}

используйте Help - > введите "import module", а затем появится wizzard !