如何从Android Studio中的一个库的依赖库中引用方法?

时间:2016-07-10 06:40:02

标签: java android android-studio gradle android-gradle

假设我构建了一个LibraryA并将其编译为LibA.jar,那么我创建一个LibraryB并将生成的LibA.jar放入LibraryB/libs,并且将其编译为LibB.jar

问题是,当我将LibB.jar放入新的Android应用模块时,我无法直接引用LibA.jar中的方法。看起来我只能引用LibB.jar中的方法,但LibB.jar编译时带有LibA依赖项。有什么方法可以解决这个问题吗?

2 个答案:

答案 0 :(得分:0)

假设您拥有对LibraryALibraryB的所有源代码访问权限,您可以通过将LibraryA作为LibraryB的单独模块来解决此问题。因此,当您想在项目中加入LibraryB时,您也必须包含LibraryA

如果LibraryA中隐藏了LibraryB供外部使用,您可以制作公开方法,从LibraryA获取LibraryB,例如getLibraryA().methodA1() }。

答案 1 :(得分:0)

您可以使用.aar来包装库。 .aar的格式允许在内部“嵌入”依赖项。有一个Gradle lib on GitHub可以帮助解决这个问题。如果您使用Maven repos,则LibraryB的POM文件可以描述其依赖项LibraryA。