将静态文件重新部署到jetty时出现intellij11错误

时间:2012-12-16 09:57:53

标签: intellij-idea web-deployment jetty-8

所有

我有完全相同的情况 - Jetty Maven Plugin is ignoring custom webdefault.xml

唯一的区别是我尝试将我的应用程序部署到Windows 7上intellij11内的本地jetty8

错误是

Error copying 'myproj\src\main\webapp\less\defaults.less' to 'myproj\target\myproj.war
\less\defaults.less'.: myproj\target\myproj.war\less\defaults.less 
(The requested operation cannot be performed on a file with a user-mapped section open)

我更新了webdefault.xml并将useFileMappedBuffer设置为false,之后又在web.xml中添加了我的过滤器配置,它也应该覆盖默认值,但没有任何帮助。

我使用默认的etc / jetty-jmx.xml启动jetty。

我错过了什么?

1 个答案:

答案 0 :(得分:4)

最后我设法解决了这个问题。

关注此页http://wiki.eclipse.org/Jetty/Howto/Deal_with_Locked_Windows_Files,遗憾的是此页面已过时,保持资源未锁定的唯一方法是

<servlet>
 <servlet-name>default</servlet-name>
 <servlet-class>org.eclipse.jetty.servlet.DefaultServlet</servlet-class>
 <init-param>
   <param-name>useFileMappedBuffer</param-name>
   <param-value>false</param-value>
 </init-param>
 <load-on-startup>0</load-on-startup>
</servlet>

请注意,自第7版以来,软件包已更改为org.eclipse.jetty。其他解决方案似乎被打破,因为码头不识别上下文引用或抛出其他异常。

希望这会对某人有所帮助。