有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

javagoogleappenginewithmaven:我必须重新启动本地devappserver才能看到JSP或servlet中的任何更改

我用谷歌应用引擎原型创建了一个Maven项目。当我启动devappserver时,我的web应用程序在我的web浏览器中的localhost:8080上打印得非常好。但一旦服务器devappserver启动,我在JSP文件或servlet中做了一些更改,并在web浏览器中进行了刷新,我就看不到任何更改。我必须在Eclipse中重新启动服务器devappserver。真遗憾

你能帮我吗

谢谢!


共 (1) 个答案

  1. # 1 楼答案

    这里的选项之一是配置Eclipse的项目构建路径。 如果您有一个web项目,那么您可以将/src/main/java类的输出文件夹更改为/target//web-INF/classes。 转到项目->;房地产->;Java构建路径->;“源”选项卡,并更改“生成路径上的源文件夹”列表中/src/main/java文件夹的“输出文件夹”属性

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

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

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