使用jetty-maven-plugin 在eclipse中进行运行调试,碰到无法编辑保存webapp下的文件
提示:请求的操作无法在使用用户映射区域打开的文件上执行
解决方法:
从 jetty 7 开始,jar存放在maven仓库中的路径为org/eclise/jetty/jetty-webapp
打开对应的版本的jar包
修改jar中的org/mortbay/jetty/webapp/webdefault.xml文件
- <init-param>
- <param-name>useFileMappedBuffer</param-name>
- <param-value>true</param-value> <!-- 将这个值设为 false -->
- </init-param>
改好后放回jar包
另一种办法是将webdefault.xml 提取出来,修改后放在给定位置,然后配置jetty插件的信息
- <configuration>
- <webAppConfig>
- <defaultsDescriptor>src/test/resources/webdefault.xml</defaultsDescriptor>
- </webAppConfig>
- </configuration>
Configuring Your WebApp
These configuration parameters apply to your webapp. They are common to almost all goals.
-
webApp
-
Represents an extension to the class
org.eclipse.jetty.webapp.WebAppContext
. You can use any of the setter methods on this object to configure your webapp. Here are a few of the most useful ones:-
contextPath
-
The context path for your webapp. By default, this is set to
/
.
descriptor
-
The path to the
web.xml
file for your webapp.
defaultsDescriptor
-
The path to a
webdefault.xml
file that will be applied to your webapp before theweb.xml
. If you don't supply one, Jetty uses a default file baked into thejetty-webapp.jar
.
overrideDescriptor
-
The path to a
web.xml
file that Jetty applies after reading yourweb.xml
. You can use this to replace or add configuration.
tempDirectory
-
The path to a dir that Jetty can use to expand or copy jars and jsp compiles when your webapp is running. The default is
${project.build.outputDirectory}/tmp
.
baseResource
-
The path from which Jetty serves static resources. Defaults to
src/main/webapp
.
resourceBases
-
Use instead of
baseResource
if you have multiple dirs from which you want to serve static content. This is an array of dir names.
baseAppFirst
-
Defaults to "true". Controls whether any overlaid wars are added before or after the original base resource(s) of the webapp. See the section on overlaid wars for more information.
contextXml
-
-
The path to a context xml file that is applied to your webapp AFTER the
webApp
element.