gpt4 book ai didi

java - 带有 Maven 的 Google 应用引擎 : I must restart the local devappserver to see any changes in a JSP or servlet

转载 作者:行者123 更新时间:2023-12-01 14:03:48 28 4
gpt4 key购买 nike

我使用 Google App Engine 原型(prototype)创建了一个 Maven 项目。当我启动 devappserver 时,我的 Web 应用程序在 Web 浏览器中的 localhost:8080 上打印得很好。但是,一旦服务器 devappserver 启动并且我对 JSP 文件或 servlet 进行了一些更改,并且在 Web 浏览器中进行了刷新,我就看不到任何更改。我不得不在 Eclipse 中重新启动服务器 devappserver。非常遗憾。

你能帮我吗?

谢谢

最佳答案

此处的选项之一是配置 Eclipse 的项目构建路径。如果您有一个 Web 项目,那么您可以将/src/main/java 类的输出文件夹更改为/target//WEB-INF/classes。转到项目 -> 属性 -> Java 构建路径 -> 源选项卡,然后更改“构建路径上的源文件夹”列表中/src/main/java 文件夹的“输出文件夹”属性。

这样,每次更改源代码时,Eclipse 都会重新编译它并复制到输出文件夹。然后 AppEngine(实际上是 Jetty 服务器)接收更改这解决了 servlet 的问题(显然是您的 war/web 项目中的 Java 类)。我目前也在努力重新加载 JSP。

当然,如果您的 war 项目依赖于其他 Artifact ,那么如果您正在运行 Web 应用程序项目,这些项目将不会更新。在这种情况下,解决方案之一是使用 JRebel,如评论中所述

刚刚想起一件事:您不必运行 AppEngine Maven 插件来进行开发本身。您可以通过 Maven 配置项目,通过 Maven 进行构建。但为了持续开发,只需在 Eclipse 中创建一个新的 AppEngine 服务器即可。然后将您的项目部署到服务器并运行/调试它。这样,您就可以自动重新发布所有更改,甚至不必像我上面提到的那样配置 Eclipse 的输出文件夹(与针对“目标”文件夹运行服务器的 appengine Maven 插件一起使用)

关于java - 带有 Maven 的 Google 应用引擎 : I must restart the local devappserver to see any changes in a JSP or servlet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19102698/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com