我已经阅读了热部署教程并且它可以工作。但是,我对限制(第3点)有疑问:
热部署仅支持方法实现中的代码更改。如果添加新类或新方法,则仍需要重新启动。
基本上,为什么当我更改现有方法时不需要重启服务器,但在添加方法或类时需要?
我的理解如下: 当我更改现有方法或引入新方法时,Eclipse会将文件放置在正确的位置,即Web服务器下。如果类已经被类加载器加载到PermGen空间中,则会从PermGen空间中卸载它,并在没有服务器重启的情况下内部加载新的类,以便反映新的更改(字节码)。是这样吗?
如果是,为什么热部署不能用于新方法和新类文件?