2011-11-17 55 views
4

我有一个使用spring框架构建的webapp。我试图使用Eclipse将它部署到Tomcat6。每次我对jsp文件进行更改时,我都必须清理构建,发布它,然后启动服务器。我相信,我们不必为JSP更改执行所有这些步骤。如果我只是发布的文件,在服务器运行的时候,我得到了下面的异常java.lang.NoClassDefFoundError:org/springframework/web/context/ContextCleanupListener

SEVERE: Exception sending context destroyed event to listener instance of class org.springframework.web.context.ContextLoaderListener java.lang.NoClassDefFoundError: org/springframework/web/context/ContextCleanupListener

SEVERE: Exception sending context destroyed event to listener instance of class org.springframework.web.util.Log4jConfigListener java.lang.NoClassDefFoundError: org/springframework/util/Log4jConfigurer

而且战争的文件没有得到部署在服务器上。

如果我对JSP文件&进行了更改,然后在eclipse中单击重新启动,它有时会发布文件&然后启动服务器。但在某些情况下,它重新启动服务器&然后发布文件(在这种情况下,我得到了上述例外&战争文件没有得到部署)。

它工作的理想方式是停止服务器,发布内容&然后启动服务器。我讨厌每次做简单的jsp更改都要这样做。有没有其他的一个点击过程来做到这一点?

回答

0

您可以使用爆炸战争和增量热部署。

这应该工作在2:30

1

http://www.youtube.com/watch?v=OMtcjgTyP-g

便接踵而来有一些错误的方式,你设置你的Eclipse项目或服务器。我建议按照说明here。此外,您可能需要下载STS(Eclipse已与Spring支持捆绑在一起),并使用它代替vanilla eclipse。

1

确保弹簧与您的应用程序一起部署。在eclipse中设置正确的导出选项,或将弹簧库复制到/ WEB-INF/lib。

MyEclipse在这里可以正常工作。您也可以检查JRebel。他们宣传没有重新部署。 ;)