ARTICLE · 981447
没有源码没有编译环境,服务器上临时改个 J
没有源码没有编译环境,服务器上临时改个 J
没有源码没有编译环境,服务器上临时改个 J
线上 Java 服务出 bug,没源码怎么临时改?
自己写了套纯命令行的工具,直接在服务器上搞定。不用拉到本地重打包,也不用找在线反编译。
核心就四步:先用 CFR 把 class 反编译成源码。接着用编辑器改逻辑。然后用 javac 重新编译。最后用 jar uf 把新 class 增量更新回原包。
脚本帮你兜底:Shell、Python 和 PowerShell 全都有。依赖的 jar 会自动塞进 classpath。它还会自动抓 public 类名来命名文件。回写时只替换改动的 class,清单文件原样保留。
生产环境慎用:签名 jar 改完会失效。涉及内部类时别乱动。另外,改之前记得加 --backup 留个后路。
这套东西只要 JDK 就能跑。关注公众号回复就能拿源码。
其它金额
赞赏金额
¥
最低赞赏 ¥0
1
2
3
4
5
6
7
8
9
0
.
原文没有源码没有编译环境,服务器上临时改个 Java 逻辑就这么难?这份命令行版 JarEditor 4 条命令帮你搞定
作者提示: 个人观点,仅供参考
新疆,8小时前,