Zacard's Notes

关于windows下jetty锁文件的解决办法

在windows环境中开发,当使用jetty作为容器时,可能会发生修改js、css文件而没有生效,甚至报错的情况。

产生原因

这是因为jetty会使用内存映射文件来缓存静态文件,其中就包括js、css文件。而在windows下,使用内存映射文件会导致文件被锁定。

解决方法

解决方法很简单,只需要再web.xml文件中配置相应的静态文件不使用内存映射文件来缓存即可:

<!--配置使windows下的jetty不锁定文件-->
<servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>/static/*</url-pattern>
</servlet-mapping>

<servlet>
    <servlet-name>default</servlet-name>
    <init-param>
        <param-name>useFileMappedBuffer</param-name>
        <param-value>false</param-value>
    </init-param>
</servlet>
坚持原创技术分享,您的支持将鼓励我继续创作!

热评文章