乐于分享
好东西不私藏

Idea 插件推荐-可直接修改jar包内的文件,无需解压

Idea 插件推荐-可直接修改jar包内的文件,无需解压


1. 背景

线上一个程序 JAR 包里的配置写错了一个数据值,你需要紧急修复。传统的解决方案?重新进行项目打包,然后重新发给运维人员进行线上部署。改一个字符串,折腾半小时,这谁受得了?

JarEditor 这个 IDEA 插件,把上面的流程压缩到了”打开 → 改 → 保存-构建”四步。

2. JarEditor的介绍和使用

  • 优点

    该插件可以直接让我们在idea里就可以修改jar包内的内容,而无需进行繁琐的操作(反编译–编译–重新打包);JarEditor插件

支持修改 class 文件、资源文件、source jar,覆盖了日常开发中你会遇到的几乎所有 JAR 类型。

  • 插件下载方式

    打开idea,左上角File–Settings–Plugins,地址栏搜索“JarEditor”下载即可,下载完成后重启Idea使插件生效。

  • 核心功能清单
  • 直接编辑JAR 包内的 class / resource 目录下的文件,零解压

  • 文件管理:添加、删除、重命名 JAR 包内的文件和文件夹

  • 剪贴板操作:支持从剪贴板粘贴文件到 JAR 内,也能把 JAR 内文件复制出来

  • 内容搜索:搜索 JAR 包内容,class 文件会基于反编译结果搜索

  • 实战:三步改完一个 Class

  • 第一步:打开 jar包 内的任意 .class 反编译文件,底部会多出一个Jar Editortab 页,点击切换即可进入编辑模式。

  • 第二步:修改并编译。改完代码后,点击Save(Compile),插件会自动编译并保存你的修改。

  • 第三步:写入 jar。点击Build Jar,编译好的 class 文件会增量写入原  jar 包。整个过程不到 30 秒。到这里修改后的程序包就处理成功了。

资源文件(properties、xml 等)的修改流程完全一样,改完直接保存即可。

  • 文件管理与搜索

在 JAR 包的项目视图中右键,可以看到JarEditor → New / Delete / Rename等操作菜单,支持在 JAR 内直接增删改查文件。

点击“Search”图标可以全文搜索 JAR 包内容。对于 class 文件,搜索基于反编译后的源码进行,相当于在整个 JAR 里做全局 检索。

3. 编译细节:JDK 版本与依赖

几个需要注意的点:

编译用的 JDK取自你 IDEA 的 SDK 列表,可以手动选择目标版本

classpath 依赖来自项目的 Libraries 配置。如果编译报找不到类,检查一下依赖是否齐全

Save(Compile)会先将修改保存到 JAR 所在目录下的jar_edit_out临时目录,Build Jar再将改动增量写入 JAR,最后自动清理临时文件

总结:JarEditor实现了无需解压就可以直接编辑和检索jar包内class和资源文件的功能,感兴趣的朋友可以去试试。

依赖IDEA最低版本为IDEA2020.3,大于等于这个版本均可安装使用。

源码下载地址:https://github.com/Liubsyy/JarEditor
本站文章均为手工撰写未经允许谢绝转载:夜雨聆风 » Idea 插件推荐-可直接修改jar包内的文件,无需解压

猜你喜欢

  • 暂无文章