【问题标题】:Eclipse Tomcat Build Publishing slowEclipse Tomcat 构建发布缓慢
【发布时间】:2014-08-02 06:21:33
【问题描述】:

设置

我在 Eclipse 中有一个项目,我想将它部署到本地 Tomcat 服务器。该项目是 git repo 的一部分。我克隆了 repo 并导入了项目。然后我安装了 Web 工具,创建了服务器等。我对 .classpath 所做的唯一更改是删除了两个库并将容器 (jre) 更改为使用工作场所的默认设置。

项目很小,构建时间为毫秒。 Progress 视图中从来没有任何活动指示器或任何东西。服务器是本地的,所以那里应该没有延迟。

在服务器上:

  • Modules auto reload by default 被选中
  • Automatically publish when resources change 被选中
  • Publishing interval (in seconds) 是 1
  • 我的模块启用了Auto Reload
  • 服务器显示为[Started, Synchronized](有时是[Started, Restart]
  • 我的模块显示为Synchronized


症状

  • 当我启用了Build Automatically 时,修改源和保存会在最多延迟 5 秒(太慢!)后重新部署。
  • 手动构建(Build Project 禁用 Build Automatically很少导致重新部署。
  • 手动发布(右键单击服务器并选择Publish通常如果在未重新部署的手动构建之后完成,则会导致重新部署。这也可能会有几秒钟的延迟。
  • 重新启动服务器没有帮助。
  • 重新启动 Eclipse 没有帮助。


问题

最理想的情况是,我希望在将更改保存到我的源后立即自动部署,而不必等待 5 秒才能重新部署。问题似乎在于Build Automatically 检查是否需要构建的时间间隔。有没有办法缩短这个?

为什么Build Automatically总是会重新部署,而Build Project很少会?

为什么在我手动发布和重新部署实际开始之间会有延迟?有没有办法解决/缩短这个问题?

鉴于服务器的 Automatically publish when resources change 财产。这是干什么用的?


谢谢, - 迈克



OSX 10.8.5

Eclipse 标准/SDK
版本:Kepler 服务版本 2
内部版本号:20140224-0627

Tomcat v7

【问题讨论】:

  • 当你说“修改源代码”时,我假设这些是 Java 类,而不仅仅是静态资产、HTML 和 JavaScript 等,是否正确?
  • 正确。 Java 类。
  • @Mike 你能解决这个问题吗?

标签: java eclipse tomcat deployment


【解决方案1】:

我们最终设法解决了(至少一种变体)“Eclipse 发布缓慢问题”作为m2e-wtp 的问题。我们在.settings/org.eclipse.wst.common.component 下找到了它使用的映射。然后,我们修改了这些映射,以一次一个地复制单个 webapp 文件夹。具体来说,我们避免复制非常大的嵌套文件夹,例如 node_modules

编辑文件并刷新Eclipse项目后,发布暂停消失了!您必须注意未来的更改(例如执行Maven > Update Project)不会覆盖.settings/org.eclipse.wst.common.component 文件。

【讨论】:

    【解决方案2】:

    您可以配置 Eclipse 的构建文件夹(用于任何生成的类文件)以直接保存到已部署的 Web 应用程序的类文件夹中。这实际上跳过了部署步骤。

    然后,如果您在每次要查看更改时将脚本/步骤添加到 touch 监视资源(如 web.xml),它会在其类路径中使用新类文件重新加载上下文。这通常需要大约一秒钟。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多