2017-01-05 4 views
0

Я имею эту установку проекта (в Android AIDE):Gradle включает в себя библиотеку из другого проекта

|---Project1 
|  |---App 
|  |---Lib 
| 
|---Project2 
    |---App 

Я хочу добавить проект 1 Lib в зависимости (или связанный источник, потому что мне нужно получить доступ к 1 классу из единственного библиотеки) к Project2.

Проект2 settings.gradle:

include ':Lib' 
project(':Lib').projectDir = new File(settingsDir, '../Project1/Lib') 

Проект2 build.gradle:

compile project(':Lib') 

Я получаю следующее сообщение об ошибке:

Project dependency 'Lib' not found. 

Есть ли что-нибудь неправильно с пути к папке ? Я не нашел хорошего решения этой проблемы, и я не очень хорошо знаком с градиентом.

Если я вместо этого связать исходную папку библиотеки Project2 я попытался добавить следующие строки в build.gradle (под андроид разделом):

sourceSets { 
    main.java.srcDirs += '/../Project1/Lib/src/main/' 
} 

Я мог бы получить доступ к источнику, если я использовал в полной мере путь вниз к папке с файлом класса, но с проблемой, что, когда я создавал экземпляр класса из Lib в Project2, он дал мне ошибку, что класс не был найден внутри пакета.

У обоих проектов должны быть одинаковые имена пакетов? Что было бы лучшим решением для управления этим, не имея Библиотеки в качестве автономной библиотеки?

ответ

0

Скопируйте папку Lib в Project 2 ... В вашем 2 модуля проекта приложения, добавьте в сборки Gradle файла -

compile project(':Lib')