如何在Eclipse中对比两个JAR版本间的新增Java方法?
基于Eclipse的JAR包Java方法差异对比方案
方案1:使用Eclipse自带功能实现对比
无需额外安装插件,操作步骤如下:
- 先在Eclipse中新建两个空白Java项目,分别命名为
v1_jar_project和v2_jar_project - 分别将v1、v2版本的所有JAR文件添加到对应项目的构建路径中:右键项目 -> Build Path -> Add External Archives,选择对应版本的全部JAR包
- 分别导出两个项目所有可访问方法的列表:
- 按
Ctrl+Shift+T打开类型搜索,筛选对应项目下的所有类并全选 - 右键选择「导出成员列表」,导出为纯文本格式,导出时仅勾选
public/protected级别的方法即可,私有方法不会被Jython调用无需纳入对比
- 按
- 使用Eclipse自带文本对比功能:选中两个导出的方法列表文件,右键 -> Compare With -> Each Other,过滤掉行首的类名前缀后做差集对比,即可得到v2版本新增的完整方法清单
方案2:使用Eclipse插件简化操作
如果需要经常做这类对比,可以安装插件提升效率:
- 在Eclipse Marketplace搜索安装
JAR Compare插件,重启Eclipse生效 - 同时选中v1、v2版本的JAR文件/包含所有JAR的文件夹,右键选择「Compare With -> Each Other as JARs」
- 在对比视图的过滤器中,选择仅展示「方法差异」,隐藏字段、常量、私有成员的变更,即可直接得到两个版本的方法新增、删除、修改列表
小提示:如果需要过滤内部类的非API方法,可以在对比规则中添加类名前缀过滤规则,仅保留你业务中实际用到的包名下的类即可,减少无效对比结果
内容的提问来源于stack exchange,提问作者User1974
相关产品推荐
相关产品推荐

