当jetty容器与eclipse集成之后,启动jetty容器部署项目后,当想要修改静态html或者css、js文件 时 会提示此文件正在运行不能保存,需要停止jetty容器才能保存文件。这样是我们开发调试非常的麻烦。
于是,找到了一种解决方案如下:
在jetty容器中的webdefault.xml文件中
修改如下配置即可:
<servlet> <servlet-name>default</servlet-name> <servlet-class>org.eclipse.jetty.servlet.DefaultServlet</servlet-class> <init-param> <param-name>useFileMappedBuffer</param-name> <!--此处改成false即可读取静态文件--> <param-value>false</param-value> </init-param> <load-on-startup>0</load-on-startup> </servlet>
修改完成之后,重启jetty服务器。
如果是使用maven中的jetty插件,则需要放在src/main/resource目录下,然后指定webdefault.xml文件
pom.xml配置jetty插件如下:
<!-- jetty插件用于部署web项目; --> <plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <version>8.1.0.v20120127</version> <configuration> <!-- 扫描时间 --> <scanIntervalSeconds>2</scanIntervalSeconds> <!-- 项目上下文 --> <webApp> <contextPath>/mideaAdmin</contextPath> <defaultsDescriptor>${basedir}/src/main/resources/webdefault.xml</defaultsDescriptor> </webApp> <connectors> <connector implementation="org.eclipse.jetty.server.nio.SelectChannelConnector"> <port>9999</port> <maxIdleTime>60000</maxIdleTime> </connector> </connectors> <stopPort>8191</stopPort> <stopKey>ts</stopKey> </configuration> <!-- 在执行install操作时,启动jetty容器. --> <executions> <execution> <id>start-jetty</id> <phase>install</phase> <goals> <goal>run</goal> </goals> </execution> </executions> </plugin>