我们遵循的部署是使用runAssembler.bat构建ear文件并将其部署在app服务器中。我们使用weblogic和jboss来测试我们构建的模块。但是,对于每个小的更改,我们都需要运行runAssembler并构建一个新的ear并将其部署在app server中并重新启动服务器。
我想知道是否有人想出了一种方法来对类文件进行Hotswapping,这些类文件是由我们在weblogic或jboss中在ATG环境中编写的代码生成的。
答案 0 :(得分:2)
通过将IDE连接到Debug端口上的Application服务器,通常可以进行hotswapping。在Eclipse和JBoss上进行设置记录在here,here和here。有一些信息可以在WebLogic here中进行设置。
附加调试器,编辑java文件,单击“保存”并在IDE中更换热代码,它现在应该更新正在运行的类文件。在Eclipse中,如果无法进行同步,它通常会弹出一个弹出窗口。如果您正在使用Eclipse,请确保勾选项目下的“自动构建”标记,否则您将永远等待。我没有遇到任何问题,通过JBOSS(爆炸的ATG EAR)和在WebSphere 7上这样做的可变成功。也可以谨慎地确保用于编译构建的相同JAVAC是加载到IDE中的那个编译路径。
至少减少构建/部署时间的另一种方法是部署解压缩/爆炸的EAR并简单地复制您的类文件(您可以使用Eclipse FileSync插件)并重新启动服务器。
还有一些商业选项,例如JRebel
答案 1 :(得分:1)
在我们的组织中,我们在使用DCEVM方面取得了很大成功。它只是修补你的JDK(在Windows中:jvm.dll
)。
答案 2 :(得分:0)
您可以使用JRebel执行此操作。在hotswapping之后,您不需要重新启动服务器,只需从Weblogic重新加载部署。