2011-10-10 100 views
3

我是JBoss Seam和Java Web应用程序开发的新手。有一件事我在学习一些教程的时候弄不明白的是,如何重新部署我在EJB项目中进行了更改的bean,而无需重新启动承载JBoss Seam Web项目的JBoss应用服务器(6.0),该项目使用豆类。 JBoss AS需要大约2分钟才能启动,并且目前很难对项目进行更改和重新部署。如何在不重新启动服务器的情况下重新部署EJB项目

,我已经在网络上阅读的一些建议包括:

  • 使用JMX控制台如。去http://localhost:8080/jmx-console/ ...好的,但是怎么样?我该怎么做?
  • 为ant创建一个build.xml文件,并得到某种自动部署的事情......有没有什么好的例子?

你们其他人更有经验的JBoss Seam web应用程序开发人员如何更快地部署您的项目?

任何帮助非常感谢,谢谢。

回答

0

这可能是由于以下几个原因:

  1. 应用程序试图保持状态。
  2. 新部署的应用程序具有与旧版应用程序不同的类加载器。
  3. 其他随机原因。在我们的例子中,jboss-classloading.xml配置不正确,导致热部署不起作用。

您是否对JBoss配置进行了任何更改?这也可能导致热部署问题。

祝你好运。

+0

如上所述,我的JBoss AS一次部署了太多不需要的项目......在取消部署一些后,速度并不慢。感谢配置问题,我会关注他们。 – fuzzyanalysis

0
  1. 使用JBoss热重新部署功能:只需从部署目录中删除您的EAR(WAR),并在那里复制您的新版本。
  2. 从IDE(Eclipse)以调试模式启动JBoss。然后一些代码更改可以直接热插拔到JVM中。如果热插拔失败,请执行1.热重新部署。
  3. 试试伟大的JRebel插件。比2.更强大的JVM热插拔。您可以将Jrebel与1.热重新部署结合使用 - 当JRebel插件失败时,请执行热重新部署。

只要小心,热重新部署可能会在某些库(例如Jasperreports)中显示memory leaks。如果是这样,请重新启动服务器。但是你很少需要重启JBoss。

+0

谢谢。我发现JBoss AS的速度缓慢是因为它一次部署了太多的项目(我没有解除旧项目的部署,这是什么错误!)。感谢您的帮助,如果我将来遇到同样的问题,我会尝试提到的热门部署选项。 – fuzzyanalysis

0

我被告知的另一个选择是在JBoss中使用“Touch Descriptors”按钮(它类似于“快速重新部署”选项)。

Touch Descriptors icon in JBoss Dev Studio 4.0

开发工作室4.0了吧,不知道早期版本虽然。显然它会在服务器上创建一个新的时间戳,并强制重新读取web.xml文件,从而重新部署。

相关问题