
由于项目功能的演进,导致 app 依赖的多个 module 下存在相同的 jar 包,包的体积较大。例如 app 依赖了 A,B,C,D 等 module,app 下有 1,2,3 三个 jar 包; Amodule 下引入了 3,4,5 三个 jar 包; Bmodule 引入了 4,5,6 三个 jar 。如何去掉重复的 3,4,5 ?
1 lazyfighter 2019-05-31 11:36:40 +08:00 common? |
2 yukiww233 2019-05-31 11:37:52 +08:00 exclude module:'' |
3 behanga 2019-05-31 14:44:10 +08:00 jar 包全换 aar,gradle 里面写 lib 依赖的时候,自动解决 |
4 vanxy 2019-05-31 16:57:27 +08:00 用包管理来解决: 把每个 jar 导出为单独的 module, 然后其他 module 再依赖这个 jar 的 module |
5 silkgrower OP @vanxy 空的 module 吗? |
6 shaobin0604 2019-05-31 20:42:59 +08:00 jar 包发布到 maven 仓库,统一用远程 maven 依赖 |
7 coolqi 2019-07-10 10:36:47 +08:00 @behanga @lazyfighter @shaobin0604 @silkgrower @vanxy @yukiww233 可以请教下:一个 jar/aar 不是应该只会在存在一份在 app 中吗? “ app 下有 1,2,3 三个 jar 包; Amodle 下引入了 3,4,5 三个 jar 包; Bmodule 引入了 4,5,6 三个 jar 包。如何去掉重复的 3,4,5 ” 1、按理说,虽然主 module 和 child module 都引用了同一个 jar,但是 app 中应该只会存在一份 不是吗? 2、如果 jar 或者 aar 可以在 module 中重复,原理是什么呢? gradle 在编译的时候是如何实现重复的 jar/aar 能都被打包进 apk 呢》 |