遵循Google https://developers.google.com/appengine/docs/java/tools/maven的指示 以某种方式,jsp文件中的更改未被拾取,而java文件中的更改是。
所以当我更改java文件时,我得到以下日志:
[INFO] INFO:文件已更改,重新加载Web应用程序。
但是当我更改jsp或html文件时,它没有被选中,旧的内容会显示在浏览器中。
我的pom.xml文件包含以下行:
<build>
<outputDirectory>target/${project.artifactId}-${project.version}/WEB-INF/classes</outputDirectory>
...
<plugins>
<plugin>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-maven-plugin</artifactId>
<version>${appengine.target.version}</version>
<configuration>
<fullScanSeconds>1</fullScanSeconds>
</configuration>
</plugin>
...
经过一些研究后,我看到一些建议使用文件同步类型的解决方案,但似乎有点奇怪。 难道它不能在日食中使用maven和gae插件开箱即用吗? 没有maven它可以正常工作,但是如果没有maven,你必须自己处理jar依赖。 如果没有热插拔/热代码替换,带有gae的eclipse中的maven解决方案不是一个好的开发环境。
答案 0 :(得分:2)
但是当我更改jsp或html文件时,它没有被选中,旧的内容会显示在浏览器中。
只需执行&#34; mvn package&#34;在&#34; myapp&#34;当我更改java代码或jsp代码时,目录(不是myapp-ear或myapp-war)。所以它的工作原理(热部署)。 希望这对你有用。
答案 1 :(得分:1)
尝试安装m2e-wtp插件,该插件充当m2e和wtp项目之间的桥梁。这是否能解决您的问题可能取决于您使用的是哪个版本的日食。
答案 2 :(得分:0)
当您在目标“ appengine:run”的帮助下在本地开发服务器上运行App Engine应用程序时,它会继续监视文件中的更改,并且每当进行一些更改并保存它们时,插件就会自动将其部署到运行开发服务器。
不需要任何额外的配置。
您可以简单地进行如下测试;