使用Arthas热更新时,lombok注解导致mc命令编译失败
看Arthas文档,其中代码热更新功能很吸引人,用文档的demo项目热更新,没有任何问题。
但是,用公司项目的代码一试,mc编译时报错。
网上查了很多博客,有说在本地idea里编译成class文件再redefine的,但我在本地idea里直接右键compile的话也会报错,便不了了之。
最终,偶尔间在一个论坛看到说lombok的注解造成了同样的问题(@Data,@Getter@Setter等等),随即检查自己的代码,原来@Slf4j也是lombok注解。
于是在idea里右键refactor->delombok->log,@Slf4j注解自动转换成经典的 Logger log=….。将这个代码文件上传到服务器,再mc编译,果然成功。