【发布时间】:2010-09-12 16:02:09
【问题描述】:
我将我的 Web 应用程序部署在 Tomcat5.5 上,并将它与 eclipse 3.2 集成使用。每次关闭 eclipse 并重新启动它时,即使它没有被修改,我也需要重新发布该应用程序。
有没有办法避免这个或我遗漏的任何步骤?
【问题讨论】:
标签: java eclipse web-applications eclipse-3.2
我将我的 Web 应用程序部署在 Tomcat5.5 上,并将它与 eclipse 3.2 集成使用。每次关闭 eclipse 并重新启动它时,即使它没有被修改,我也需要重新发布该应用程序。
有没有办法避免这个或我遗漏的任何步骤?
【问题讨论】:
标签: java eclipse web-applications eclipse-3.2
转到首选项->服务器->启动。删除选项“启动服务器时自动发布”
【讨论】:
我认为 adij.wordpress.com 正确地确定了这一点。如果您发现在开发应用程序时花费大量时间等待 Tomcat 重新启动,请考虑改用 Jetty。它将在 Tomcat 的一小部分时间内重新启动,并提供了一个功能齐全的替代方案,非常适合敏捷开发。
我们使用带有多个 EAR 文件的 Glassfish(基于 Tomcat),它的开发速度很慢,因此每个 EAR 项目都包含一个 Jetty 启动器,该启动器只需为开发人员当时正在处理的单个 WAR 启动。如果您使用 IntelliJ,这可以自动进行,以便在单击浏览器并刷新页面所需的时间内,应用程序任何层的更改都可以立即反映到当前运行的应用程序中。
【讨论】:
eclipse 3.3 或 3.4 或更高版本的 WTP 对您而言是否具有相同的行为方式?
【讨论】:
由于这是一个相当古老的问题,并且仍然没有答案,我想用这个答案来扩大范围:
我认为您有一个理由希望停止重新发布您不知道的应用程序(除了厌恶正在做的不必要的工作)
我唯一能猜到的是它需要大量的时间。对我来说,发布时间从来都不是问题,但如果它们适合你,你可能会考虑
可能不是发布是您的问题,而是启动时间。通过非常严格地控制它,您可能会获得很多,例如在 Web 应用程序启动后按需启动服务。我知道有几个应用程序在启动期间会做一些繁重的工作(在它们接受第一个连接之前,并且在它们将控制权传递给下一个可能做同样事情的应用程序启动之前)。我恨他们。通常这样的服务会得到很多脏话,最后是他们自己的网络/应用程序服务器。必须重新启动其中一个应用程序至少不会让所有其他应用程序(及其用户)受到影响,这些应用程序在编写时考虑到了良好的启动时间。
如果您的问题仍然存在并且您仍在寻找解决方案,请发表评论。您的重新发布时间是什么时候?
【讨论】: