【问题标题】:Getting Eclipse to automatically reload the JSP pages in my Java web application让 Eclipse 在我的 Java Web 应用程序中自动重新加载 JSP 页面
【发布时间】:2012-12-24 21:53:11
【问题描述】:

我得到了一个 Struts 项目的模板来处理,我注意到当我在 Eclipse 中的集成 Tomcat 上运行 Web 项目并对 .jsp 视图页面进行更改时,它们不会在几秒钟后自动重新加载- 这确实发生在我自己制作的其他项目中。

所以我认为这是一个配置问题,我做了一些研究,查看了我的 Tomcat 服务器设置:

(x) 资源变化时自动发布(1秒间隔)

但是因为我自己的项目重新加载并且我为它们使用相同的服务器,所以我认为这一定是一个特定于应用程序的问题。 所以我查看了context.xml,看看这里有什么要改变的

<Context 
...
reloadable="true"
...
>

我只能假设告诉服务器确实在更改时重新加载应用程序。

所以我真的想不通。在我看来,这里一切都井井有条。我错过了什么?

【问题讨论】:

    标签: eclipse jsp tomcat


    【解决方案1】:

    来自关于 Context attributes 的 Apache Tomcat 文档:

    可重新加载

    如果您希望 Catalina 监控其中的类,请设置为 true /WEB-INF/classes/ 和 /WEB-INF/lib 用于更改,并自动 如果检测到更改,则重新加载 Web 应用程序。这个功能是 在应用程序开发过程中非常有用,但它需要 显着的运行时开销,不推荐用于 部署的生产应用程序。这就是为什么默认设置为 此属性为假。您可以使用 Manager Web 应用程序, 但是,触发按需重新加载已部署的应用程序。

    也许这对你来说会很有趣:Using Tomcat Reload Features To Speed Up Development

    【讨论】:

    • 请注意,我已经将 Context 属性 reloadable 设置为“true”,如原始问题中所述,并且由于某种原因这实际上不起作用。
    • @arnehehe 你在哪里设置的?如果您通过 Eclipse 部署您的应用程序,则必须有一些 Servers 项目,并且其中有一个 Context.xml。应该有 reloadable="true" 设置。
    • 另外,您是否检查了 Project => Build Automatically?进行更改后是否保存更改(对不起,只是检查)。可以这么说,我的 Java Web 项目从来没有遇到过任何与可重载性相关的问题。这很奇怪......而且这不是应用程序问题。自动重新加载已部署的应用程序是一个容器作业。
    • 它实际上只是击中了我 - 在我的项目中,每次都会同步自己备份,我所有的 .jsp 都在 WebContent 文件夹中。在给我的项目中,它们被分隔在 /src/ 文件夹中的包中。这可能是 .jsp 没有重新加载的原因吗?因为它们在 /src/?
    • 我要到星期一才能测试它。提前感谢所有帮助
    【解决方案2】:

    我遇到了同样的问题,我通过其 Maven .pom 文件将 Java/Spring 项目导入 Eclipse。

    我发现我必须使用“调试”而不是“运行”来运行项目 - 只有这样,我的 .jsp 文件的更改才会被注意到,因此重新加载网页几乎会立即显示更改。

    【讨论】:

      猜你喜欢
      • 2016-09-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-08
      • 1970-01-01
      • 2016-10-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多