网站首页 > 博客文章 正文
优雅的替换第三方jar包中的类。
优雅的替换掉第三方jar包中的类,需求背景是:项目中依赖第三方jar包需要对其进行扩展或修复未知的bug,但是第三方类库中没有提供扩展点,无法使用继承对其改造。通常做法第一种是将jar包下载下来重新修改然后发布在私有仓库中。第二种做法是直接将需要的代码全部复制到当前项目中进行修改。
当然还有种更优雅的实现!我们只需要在pom中引入这个插件就可以实现!这个插件是maven-心绞痛-plugin插件,想对hutool这个jar包中的某个类进行改造,这个插件的原理是将这个jar包进行解压,只需要在当前项目中有同包同类的文件,在解压的时候它就可以做到不进行覆盖,这样就达到了本地文件替换原jar包中的class文件的目的!
在这里我们要使用hutool进行输出json,要在输出之前打印3行代码。这里新建一个同包同类的文件,包也是cn.hutool.json,类名也一样。把源码拷贝进来,在这里进行打印三行代码,我们来验证一下。接下来启动一下项目,项目启动成功。然后我们可以发现在进行输出json的时候进行了三段打印,这样就实现了本地文件替换jar包中的文件达到了我们想要的目的!
今天就讲到这,谢谢大家!
猜你喜欢
- 2024-11-12 基于SpringBoot 的CMS系统,拿去开发企业官网真香(附源码)
- 2024-11-12 解决JAVA压缩图片变色问题(java压缩图片至指定大小)
- 2024-11-12 J2eeFAST 开源平台(j2ee开发工具)
- 2024-11-12 Java项目中用它来代替一半的反射使用,爽到飞起!
- 2024-11-12 反射用不好真的会影响代码执行效率!
- 2024-11-12 基于AbstractProcessor扩展MapStruct自动生成实体映射工具类
- 2024-11-12 Java面试问题(一)—— java 基础(java面试问题大全及答案大全)
- 2024-11-12 一个轻量级的Java快速开发平台快速开发项目并交付「接私活利器」
- 2024-11-12 电商系统中的 ID 是如何生成的?(电商注册账号是什么)
- 2024-11-12 用了这两款插件,同事再也不说我代码写的烂了
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)