在模块之间共享依赖库

问题描述 投票:1回答:1

我的项目布局如下:

+-- app
|   +-- builds
|   +-- libs
|   +-- src

+-- my-lib
|   +-- builds
|   +-- libs
|   |   +-- lib1.jar

我已经在implementation project (':my-lib')模块中添加了my-lib作为app,如何在lib1模块中使用app类?

android android-studio gradle dependencies
1个回答
1
投票

my-lib1库依赖部分使用api而不是implementation来包括lib1库,如下所示。

dependecies {
     api files('libs/lib1.jar')

     ... some other libraries ...
}

tl;博士

apiimplementation之间的差异在gradle docs网站上解释如下。

api配置应该用于声明由库API导出的依赖项,而implementation配置应该用于声明组件内部的依赖项。

对使用api的影响 如果你在lib1做任何改变,它会增加构建时间。因为它需要重建你的my-libapp。在你的情况下,它不会发生。查看此reference article了解更多信息。

© www.soinside.com 2019 - 2024. All rights reserved.