Android Studio "ошибка: пакет не существует"
Я создал Android-библиотеку как модуль Android Studio. Добавлено как зависимость от моего корневого модуля. Во время кодирования я могу импортировать любой класс из пакета библиотеки, но пока я пытаюсь запустить приложение, я получаю сообщение об ошибке package some.mylibrary.project does not exist
.
build.gradle корневой модуль
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.12.+'
}
}
apply plugin: 'com.android.application'
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
compile 'com.android.support:appcompat-v7:20.+'
compile 'com.google.android.gms:play-services:5.+'
compile project(':libraries:mylibrary')
}
android {
compileSdkVersion 17
buildToolsVersion "20.0.0"
lintOptions {
disable 'InvalidPackage'
checkReleaseBuilds false
abortOnError false
}
***
}
build.gradle библиотечный модуль
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.12.+'
}
}
apply plugin: 'com.android.application'
apply plugin: 'idea'
android {
compileSdkVersion 17
buildToolsVersion "20.0.0"
*****
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
}
settings.gradle
include ':libraries:mylibrary'
P.S. Я должен упомянуть, что проект был экспортирован из Eclipse IDE, поэтому структура проекта отличается от стандартной.
Ответы
Ответ 1
Если у вас есть библиотечный модуль, он не может использовать оператор apply plugin: 'com.android.application'
в определении модуля, или сборка будет автоматически терпеть неудачу, как вы видите. Вместо этого используйте apply plugin: 'com.android.library'
.
Была отправлена ошибка, чтобы запросить, чтобы система сборки вышла из строя громко, а не тихо, когда это произойдет: https://code.google.com/p/android/issues/detail?id=76725
Ответ 2
Для Android Studio 2.2.2
Да, в модуле библиотеки он не может использовать команду apply plugin: com.android.application
в определении модуля, да, используйте вместо этого плагин apply com.android.library
. (все еще в модуле lib)
Но тогда вы должны сделать следующее:
- Выставлять те же версии SDK в файлах Gradle для обоих модулей.
- Щелкните правой кнопкой мыши на папке модуля "приложение" и щелкните по → откройте настройки модуля
- Перейдите на вкладку "зависимости"
- Нажмите на знак +, чтобы добавить новую зависимость, и выберите "Dependency Module"
- Найдите нужную библиотеку и добавьте ее.
Также при наименовании вашего модуля lib избегайте капиталов.
Ответ 3
Работает
компилировать 'io.github.kobakei: ratethisapp: 1.2.0'