V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
liubsyy
V2EX  ›  分享创造

在 VS Code 里直接改 JAR,我复刻了 JarEditor

  •  
  •   liubsyy · 3 月 24 日 · 959 次点击

    在 VS Code 里直接改 JAR ,我复刻了 JarEditor

    平时做 Java 开发时,很多人应该都遇到过这种情况:

    你拿到一个 JAR ,只是想进去看一眼,或者改一个小地方试试,结果却要先解压、再找文件、再反编译、改完以后还得重新打包。

    事情不大,但步骤很多,用起来总觉得不顺手。

    所以我做了一个 VS Code 扩展,名字叫 JarEditor

    之前我做过一款 IDEA 插件,也叫 JarEditor。这次是把这套能力带到了 VS Code 里,希望让“查看、编辑、回写 JAR”这件事更简单一点。

    图片

    它能做什么

    简单来说,JarEditor 可以让你直接在 VS Code 里处理 JAR 文件。

    现在已经支持这些功能:

    • 在 Explorer 里直接浏览工作区中的 JAR
    • 查看 JAR 内部的目录和文件
    • 直接打开和编辑普通文本文件
    • .class 反编译成 Java 源码查看
    • 修改 .class 后重新编译
    • 在 JAR 里新增文件、目录、类
    • 删除不需要的 entry
    • 把修改重新构建回原始 JAR

    也就是说,以前那种“解压 -> 修改 -> 再打包”的流程,现在很多时候可以直接在编辑器里做完。

    适合什么时候用

    我觉得它比较适合下面这些场景:

    • 想快速看看第三方依赖包里到底有什么
    • 想确认某个配置文件、资源文件是不是你预期的内容
    • 想看某个 .class 实际反编译出来是什么样
    • 想临时改一点内容做验证
    • 想快速处理历史包、补丁包或者线上包

    如果你平时经常和 Java 产物打交道,这种方式会省掉不少折腾。

    JarEditor add and delete actions

    怎么安装

    直接在 VS Code 扩展市场搜索 JarEditor 安装即可。

    如果你需要编辑 .class 并重新编译,机器上准备一个可用的 JDK 就可以了。

    项目地址

    GitHub:

    https://github.com/Liubsyy/jar-editor-vscode

    最后

    从之前的 IDEA 版 JarEditor,到现在这个 VS Code 版,我一直想做的其实都是同一件事:让操作 JAR 这件事别那么麻烦。

    如果你平时会在 VS Code 里处理 Java 项目,或者经常需要查看、修改 JAR ,欢迎试试这个项目,也欢迎反馈意见。

    5 条回复    2026-03-25 15:52:25 +08:00
    sduoduo233
        1
    sduoduo233  
       3 月 25 日 via Android
    和 recaf 有啥区别
    awesomePower
        2
    awesomePower  
       3 月 25 日
    赞一个!你开发的 jareditor 挺有用的!
    sankooc
        3
    sankooc  
       3 月 25 日
    挺好
    liubsyy
        4
    liubsyy  
    OP
       3 月 25 日
    @sduoduo233 我这个更轻量,基于 vscode 或 IDEA 的插件,只修改需要编辑的文件,其他的都是原封不动。recaf 是全部加载到 workspace 内存再全量导出 jar ,不一定是原有的结构,这一点从导出 springboot jar 就能看出来。
    HaibaraDP
        5
    HaibaraDP  
       3 月 25 日
    挺好。遇到过一次要改 jar 里面一个 class 里面的 if 判断,class 文件里有很多依赖,最后好像是用 Javassist 改的,再用 bandizip 替换 jar 里的文件
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   5526 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 08:44 · PVG 16:44 · LAX 01:44 · JFK 04:44
    ♥ Do have faith in what you're doing.