线上项目替换class文件的陷阱

在紧急情况下替换线上项目的class文件需谨慎。确保替换时考虑$classMapper$类,因为编译后的protected class会变为$.class。对于多个class的修改,建议打war包替换,避免单个替换带来的风险。Tomcat7不需要重启,但修改常量类可能导致其他已编译代码使用旧值。替换后务必清除Tomcat work目录的缓存,若涉及常量值变更,不变更可能导致问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


         紧急关头难免会替换class文件,但一定要注意一下几点。

        1、小心class内中的project 的类的后,替换文件需要加上 $classMapper这个类, 编译成class的时候,会把public class 中的protected class 编译为$.class , 所以替换的时候也要找到这个class替换上, 不过对于这中替换,最好是打成war包替换.

        2、替换完class,是否需要重启容器? 例如tomcat7是无需重启的,但是常量类不再规范的一个类的时候,可能修改了一个类,其他的编译好的仍然使用原值。

        3、 超过5个class,有必要打war包,就不要单次的去替换class文件,不然出了问题还

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值