Eclipse中maven环境使用jetty启动后不能保存更改后的css,js等静态文件的解决方法
2016-12-12 09:33
1051 查看
【问题现象】
使用Maven + Eclipse + Jetty 进行J2EE开发,但有一个问题就是css、js等静态文件更改以后,在eclipse里保存都会失败,eclipse给出的错误信息是文件被锁定,这样迫使每次都得重启Jetty,对开发非常不方便。
【原因分析】:
Jetty会使用内存映射文件来缓存静态文件,包括js,css文件。
在Windows下,使用内存映射文件会导致文件被锁定,所以当Jetty启动的时候无法在编辑器对js或者css文件进行编辑。
【解决方案】:
更改Jetty默认配置,不适用内存映射文件来做缓存。
步骤:
1.找到webdefault.xml,在本地仓库中找到jetty插件,以6.1.26版本为例,jetty-6.1.26.jar在$maven_repo$/org/mortbay/jetty/jetty/6.1.26/jetty-6.1.26.jar,webdefault.xml文件在包org\mortbay\jetty\webapp下。
它在jar文件中的路径是org/mortbay/jetty/webapp/webdefault.xml
2.找到useFileMappedBuffer参数,把值设成false
<init-param>
<param-name>useFileMappedBufferparam-name>
<param-value>false<param-value>
init-param>
3.在pom.xml中,设置jetty使用更新过的webdefault.xml文件
大功告成!
使用Maven + Eclipse + Jetty 进行J2EE开发,但有一个问题就是css、js等静态文件更改以后,在eclipse里保存都会失败,eclipse给出的错误信息是文件被锁定,这样迫使每次都得重启Jetty,对开发非常不方便。
【原因分析】:
Jetty会使用内存映射文件来缓存静态文件,包括js,css文件。
在Windows下,使用内存映射文件会导致文件被锁定,所以当Jetty启动的时候无法在编辑器对js或者css文件进行编辑。
【解决方案】:
更改Jetty默认配置,不适用内存映射文件来做缓存。
步骤:
1.找到webdefault.xml,在本地仓库中找到jetty插件,以6.1.26版本为例,jetty-6.1.26.jar在$maven_repo$/org/mortbay/jetty/jetty/6.1.26/jetty-6.1.26.jar,webdefault.xml文件在包org\mortbay\jetty\webapp下。
它在jar文件中的路径是org/mortbay/jetty/webapp/webdefault.xml
2.找到useFileMappedBuffer参数,把值设成false
<init-param>
<param-name>useFileMappedBufferparam-name>
<param-value>false<param-value>
init-param>
3.在pom.xml中,设置jetty使用更新过的webdefault.xml文件
<groupId>org.mortbay.jettygroupId> <artifactId>maven-jetty-plugin<artifactId> <version>6.1.26</version> <configuration> ... <webAppConfig> <defaultsDescriptor>src/test/resources/webdefault.xml</defaultsDescriptor> </webAppConfig> <configuration>
大功告成!
相关文章推荐
- Eclipse中maven环境搭配,使用jetty启动后不能更改css,js文件的解决方法
- 解决myeclipse maven jetty启动后无法修改静态资源js css文件
- Eclipse中如.js,或.properties文件中有中文不能保存的问题的解决方法
- 解决在jetty启动后不能修改js、css等文件的问题
- eclipse不能保存js文件解决方法
- Jetty启动时不能修改 js等静态文件的解决
- Jetty启动时不能修改 js等静态文件的解决
- eclipse中jetty启动maven项目,调试debug时,修改js文件必须关闭jetty才能保存
- 使用Maven + Jetty时,如何不锁定js css 静态资源
- 使用Form验证,未登录时登录页面无法显示图片、css、js文件的解决方法
- 使用eclipse3.8搭建maven web开发环境,达到在eclipse编辑器中修改保存任何代码,都能直接启动tomcat预览效果的目的
- Linux下修改.bash_profile文件后再次用CRT启动环境变量未生效的解决方法,oracle命令无法使用
- RubyMine打开工程,启动后,静态资源(css、js、images等)访问不了,解决方法
- 页面在IDEA项目目录不能正确加载css/js等文件的解决方法
- jetty无法即时更新html、js、css等静态文件的解决办法
- 解决jetty启动后不能修改静态文件的问题
- 解决启动jetty后,不能修改js文件的问题
- Eclipse+Maven+Jetty 环境下java.lang.OutOfMemoryError: PermGen space及其解决方法
- 关于更改ip后dbconsole服务不能启动(em不能使用)问题的根本解决方法
- 关于更改ip后dbconsole服务不能启动(em不能使用)问题的根本解决方法(ZZ)