У меня есть специальная библиотека, на которую нужно ссылаться примерно в 10 проектах. Все отлично работает в Eclipse, но я хочу перенести их в Android Studio, чтобы воспользоваться системой сборки. Я уже проверитьСсылка на проекты внешних библиотек в Android Studio (v0.8.9)
Android studio add external project to build.gradle
How to share a single library source across multiple projects
и некоторые другие ссылки и документы в Gradleware, но я не получаю, чтобы мои проекты компиляции.
Моя файловая структура, как:
+ проекты
| + libraryProject
| + --- рабочее пространство
| + ------ projectSrc
|
| + project0
| + --- рабочее пространство
| + ------ projectSrc0
|
| + project1
| + --- рабочее пространство
| + ------ projectSrc1
. . не
| + projectN
| + --- рабочее пространство
| + ------ projectSrcN
Каждый проект содержит документы, файлы проекта, и т.д ... и поэтому нет удобно иметь src в одной корневой папке.
В моем "project1" settings.gradle файла я использовал:
include ':module-custom-lib'
project(':module-custom-lib').projectDir = new File(settingsDir, '../../../libraryProject/workspace/projectSrc')
В моем файле build.gradle, зависимости раздела добавить:
dependencies {
compile project(':..:..:..:libraryProject:workspace:projectSrc')
....
}
Но Я получаю сообщение о том, что проект не найден.
Я также использовал следующий подход:
def customLib = file('../../../libraryProject/workspace/projectSrc')
settings.createProjectDescriptor(rootProjectDescriptor, 'module-custom-lib', customLib)
include ':module-custom-lib'
Тогда в build.gradle
dependencies {
compile project(':module-custom-lib')
....
}
Пожалуйста, помогите.Спасибо за ваше время.
EDIT: мне удалось получить его работу путем добавления модуля приложение в качестве суффикса в директории проекта .:
include ':module-custom-lib'
project(':module-custom-lib').projectDir = new File(settingsDir, '../../../libraryProject/workspace/projectSrc/app')
Теперь члены библиотеки решить отлично, но в рамках проекта " R 'не может быть разрешен. Так что если:
setContentView(R.layout.main);
не удается найти этот ресурс. Очистка и восстановление проекта не устраняет проблему.
EDIT 2: По-видимому, возникла проблема с слиянием манифеста, потому что проблема была исправлена после того, как я скорректировал minSdk и targetSdk обоих проектов. Предыдущее решение работает отлично.
Это дает мне ошибку «Конфигурация с именем« по умолчанию »не найдена.» –
Любой намек? Что означает это сообщение? –
Это означает, что он не находит модуль в месте, на которое указывает конфиг в настройках.gradle, - вероятно, он не найдет свой build.gradle вообще. –