Androidstudio не может разрешить классы из импортированной библиотеки

У меня есть приложение для Android, в котором есть само приложение и импортированная библиотека AndroidLibrary, состоящая из JAR-архива и папки lib с дополнительными классами. JAR-архив также находится в приложении, но я хочу, чтобы архив был доступен только через библиотеку. Проблема здесь в том, что он отлично работает на более старых версиях Android Studio, но в последних версиях этого не происходит, я проверил свои зависимости, и кажется, что они в порядке, но это либо нет, либо в Android Studio есть какая-то ошибка.

Есть ли другой способ исправить это, кроме перехода на более раннюю версию моей Android Studio?

Мои зависимости выглядят следующим образом:

приложение - build.gradle

dependencies {
    implementation files('libs/some.jar')
    implementation project(':intended-library')
}

библиотека build.gradle

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', {
    exclude group: 'com.android.support', module: 'support-annotations'
})

implementation 'com.android.support:appcompat-v7:25.1.1'
testImplementation 'junit:junit:4.12'
implementation files('libs/inteneded-jar-archive.jar') }

settings.gradle

include ':app', ':intended-library'
1
0
70
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

В файле build.gradle вашей библиотеки используйте api вместо реализации

dependencies {
 api fileTree(include: ['*.jar'], dir: 'libs')
 androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations' }) 

}

Это решило мою проблему, теперь она снова строится. Спасибо!

vMysterion 31.10.2018 13:12

Другие вопросы по теме