如何开发Java Web应用程序而无需一直进行部署
我建立了一个简单的Eclipse 3.5 / Jetty 6.1 web应用程序,它返回hello world。 有用。 这是在Windows上并使用“Jetty通用服务器适配器”。 我有自动部署工作,以便定期更改后部署。
我如何设置它,以便如果我改变任何静态内容,它不必重新部署,即我可以打F5直接看到变化。 对于较小的HTML更改,部署需要20-30秒才能使用。
我之前没有使用过Jetty,所以我无法从经验中了解到,如果长时间的部署时间是正常的,以及如何优化它。 但我只是通知这取决于所使用的服务器和服务器插件。 对于Apache Tomcat 6 + Eclipse提供的插件和Sun Glassfish v3 + GF提供的插件,自动部署速度足够快。 特别是Glassfish v3,在启动时相对较慢,真正擅长亚秒(热)部署。
第一步是检查是否有其他Jetty Eclipse插件,然后尝试使用它们和/或是否存在降低hotdeploy扫描时间间隔的设置。
我使用下面的配置maven
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<version>6.1.25</version>
<configuration>
<scanIntervalSeconds>1</scanIntervalSeconds>
<requestLog implementation="org.mortbay.jetty.NCSARequestLog">
<append>true</append>
</requestLog>
</configuration>
</plugin>
因此码头每秒都会扫描一次更改,对于我的简单应用程序,重新启动应用程序需要大约200ms。 我注意到有时候yetty并没有看到jsp文件的变化
你所描述的问题可能是这一个。 这是一个已知的问题,即静态文件在Windows上的Jetty中被锁定 - 这可能会强制您重新部署。 通常你可以编辑你的文件,你不必重新部署任何东西来查看你的改变。 它甚至可以在类修改时运行(一定程度上)。
这是我今天第三次做广告,但这里是我的基于Jetty的测试方法:Hifaces20测试。
PS。 Hifaces20测试不受文件锁定问题的影响,它实现了建议的解决方法。
链接地址: http://www.djcxy.com/p/45375.html上一篇: How do develop a Java web application without having to deploy all the time