AS多个library库含有相同引用优化

假设项目引用了类库 A 和类库 B ,同时,这两个类库都依赖包 C 。

  1. 如果 A 、B 、C 均为 Maven 依赖,可以直接使用,不会存在冲突问题。
    如果还是有问题,则在主项目可以去除 A 、B 中的 C 。
    主项目:
    compile 'a.group:a.artifactId:a.version' {
    exclude group: 'c.groupId', module: 'c.artifactId'
    }
    compile 'b.group:b.artifactId:b.version' {
    exclude group: 'c.groupId', module: 'c.artifactId'
    }
    compile 'c.groupId:c.artifactId:c.version'
  2. 如果 A 、B 均为 Maven 依赖,C 为 jar 依赖。则将 C 复制到主项目、A 、B 中,主项目 compile C ,A 、B provided C 。
    主项目: compile files('libs/C.jar')

A 、B 项目:provided files('libs/xx.jar')

  1. 如果 A 、B 均为 Library Project 依赖,C 为 jar 依赖。同 2 。
  2. 如果 A 、B 均为 Library Project 依赖,C 为 Maven 依赖。同 2 或者 1(Maven 依赖也可以进行 provided 处理)。
  3. 如果 A 为 Maven 依赖或者 Library Project 依赖,B 为 jar 依赖,C 为 jar 依赖。
    A 项目:provided files('libs/xx.jar')

B 项目和主项目,不做其他任何处理。

  1. 如果 A 、B 、C 均为 jar 依赖,尝试重新将 A 、B 打包,将 C 剥离出来。
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容