`

jetty容器启动后,不能修改静态文件解决方案

 
阅读更多

当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>

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics