java如何修改开源框架

背景:

在软件开发过程中,我们会使用到很多开源的框架,但是有的时候我们使用的开源框架的某些部分不符合我们的需求,就需要修改源码。

方案:

  1. 把需要修改的类拷贝到项目中(路径要保持一样)进行修改,项目继续依赖原框架。
  2. 把项目从githup clone到本地,进行修改,修改完毕后,发布到内部的maven私服中,进行使用。

优缺点:

方案一:

优点:比较容易看到修改了哪些源码,而且仍然依赖原框架,可以灵活升级版本
缺点:由于仍然依赖原框架,会导致项目中包含重复的类,具体是修改后的源码生效还是框架中的源码生效比较依赖于java的类加载策略。

方案二:

优点: 可以直接引用,不会存在重复的类。
缺点:随着时间增长,源码管理难度提升,可能都会忘记了改过哪些东西,并且版本升级也不方便。

类加载策略:

项目中包含和依赖同名同路径的类,会优先在家项目中的类。
项目依赖包中,有同名同路径的类,会根据maven的依赖机制进行加载。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,568评论 25 709
  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 14,520评论 2 59
  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,056评论 3 119
  • AirPods在去年9月发布,12月开始发售,第一波发货之后,其产能严重不足,订购后都需要4-6周之后才能拿到货。...
    岳老师阅读 3,008评论 1 1
  • 学生在阅读和写作中,都缺少一些逻辑思维。我试着教给他们一些逻辑思维方式,诸如抽象与概括、分析与综合、归纳与...
    耕耘三尺有天地阅读 1,819评论 0 1

友情链接更多精彩内容