避免在Eclipse关闭后重新发布Web应用程序

时间:2020-03-06 14:38:58  来源:igfitidea点击:

我将Web应用程序部署在Tomcat5.5上,并将其与eclipse 3.2集成使用。每次关闭eclipse并重新启动它时,即使未修改它也需要重新发布该应用程序。

有办法避免这种情况或者我错过的任何步骤吗?

解决方案

Eclipse 3.3或者3.4或者更高版本的WTP是否对我们有相同的作用?

由于这是一个非常老的问题,并且仍未得到解答,因此我想通过以下答案扩大范围:

我认为我们有理由要取消我不知道的应用程序的重新发布(除了避免不必要的工作)

我唯一能猜到的是,这需要花费大量时间。对我而言,发布时间从来都不是问题,但是如果它们适合我们,我们可能会考虑

  • 增加内存(如果交换虚拟内存会减慢重新发布的速度)-例如购买新的RAM
  • 优化项目中的依赖关系,例如如果有大量项目,请预先打包依赖的项目;如果只有一个大型项目,请创建子项目并依赖它们。 (假设这些因素中的任何一个都会影响重新发布的速度。我尚未对其进行衡量)
  • 使用Tomcat6或者glassfish有帮助吗?

可能不是发布是问题,而是启动时间。通过非常严格地控制它,我们可能会收获很多,例如在Web应用程序启动后按需启动服务。我知道有几个应用程序在启动期间会做一些繁重的工作(在它们接受第一个连接之前,以及在将控制权传递给下一个可能会执行相同操作的应用程序启动之前)。我恨他们。通常,此类服务会说很多脏话,最后还会有自己的Web /应用程序服务器。必须重新启动这些应用程序中的一个,至少不应至少使所有其他应用程序(及其用户)遭受痛苦,而这些编写时要牢记启动时间。

如果问题仍然存在,并且仍在寻找解决方案,请发表评论。重新发布时间是几点?

转到"首选项"->"服务器"->"启动"。删除选项"启动服务器时自动发布"

我认为adij.wordpress.com正确地钉了这一个。如果发现在开发应用程序时花费大量时间等待Tomcat重新启动,请考虑改用Jetty。它只需Tomcat的一小部分即可重新启动,并提供了功能全面的替代方案,非常适合进行敏捷开发。

我们使用带有多个EAR文件的Glassfish(基于Tomcat),并且开发速度很慢,因此每个EAR项目都包含一个Jetty启动器,该启动器只是为开发人员当时正在处理的单个WAR触发。如果使用IntelliJ,则可以使其自动进行,以便在单击浏览器并刷新页面时,可以将应用程序任何层的更改立即反映到当前运行的应用程序中。