我正在使用JRebel + Intellij JRebel IDE插件来热部署gradle项目。
我有一个JRebel的情况,其中有一些JRebel拒绝允许我进行热部署的Java类。
有些课程重新加载。
其他课程根本不重新加载。 (通常在与重新加载OK的类相同的gradle子项目中)
没有押韵或理由为什么他们不想重装。这些课程并不特别。不是疯狂的长。
我们使用Guice ...但是一些由Guice管理的文件重新加载,而其他文件没有。
它使JRebel几乎无法使用,因为你不能相信它是否会热部署。
我为我们的项目创建了一个自定义JRebel插件,希望它有所帮助,但事实并非如此。因为类本身不会触发重载事件,所以插件无法帮助修复此问题。
请注意,不会重新加载的有问题的类通常是接口的实现,如果我更改实现,则不会发生重新加载。但是,如果我更改接口java类,那将重新加载!
JRebel尤其不喜欢Java类文件。
当我构建它不会拾取的文件时,您甚至可以在IDE中看到我获得的这些文件的100%时间:
有没有任何想法让这种情况停止发生?
由于延迟加载,该类不在类加载器中。因此问题。
JRebel无法重新加载类加载器中尚未安装的类。