我在Jetty Server中部署了一个.war
文件。
服务器已启动,但请告诉我在哪里可以看到该war文件的内容?
我读过:
如果extract参数为true,则任何打包的war或zip文件都将为 首先在部署之前将其解压缩到临时目录。
请告诉我在哪里可以设置extract参数为true以及临时文件夹路径是什么?
这是我的jetty-webapps.xml
文件
<Configure id="Server" class="org.eclipse.jetty.server.Server">
<Ref id="DeploymentManager">
<Call id="webappprovider" name="addAppProvider">
<Arg>
<New class="org.eclipse.jetty.deploy.providers.WebAppProvider">
<Set name="monitoredDirName"><Property name="jetty.home" default="." />/webapps</Set>
<Set name="defaultsDescriptor"><Property name="jetty.home" default="."/>/etc/webdefault.xml</Set>
<Set name="scanInterval">1</Set>
<Set name="contextXmlDir"><Property name="jetty.home" default="." />/contexts</Set>
<Set name="extractWars">true</Set>
</New>
</Arg>
</Call>
</Ref>
</Configure>
答案 0 :(得分:7)
检查日志文件。它应该像这样
2012-11-06 17:41:54.334:INFO:oejw.WebInfConfiguration:提取jar:file:/usr/oc/jcast8083/webapps/spdy.war!/ to /tmp/jetty-0.0.0.0-8083 -spdy.war-_spdy-任何 - / web应用
在这种情况下,war文件的内容在
中/tmp/jetty-0.0.0.0-8083-spdy.war-_spdy-any-/webapp
答案 1 :(得分:4)
您部署的所有war文件都会在Jetty_Home/work
中提取以进行部署。但是,如果您希望在部署到工作文件夹之前将文件提取到temp文件夹中,则可以在extractWars
文件中将jetty-webapps.xml
参数设置为true。 jetty-webapps.xml
文件位于Jetty_HOME/etc/
文件夹中。
<Configure id="Server" class="org.eclipse.jetty.server.Server">
<Ref id="DeploymentManager">
<Call id="webappprovider" name="addAppProvider">
<Arg>
<New class="org.eclipse.jetty.deploy.providers.WebAppProvider">
<Set name="monitoredDirName"><Property name="jetty.home" default="." />/webapps</Set>
<Set name="defaultsDescriptor"><Property name="jetty.home" default="."/>/etc/webdefault.xml</Set>
<Set name="scanInterval">1</Set>
<Set name="contextXmlDir"><Property name="jetty.home" default="." />/contexts</Set>
<Set name="extractWars">true</Set>
</New>
</Arg>
</Call>
</Ref>
</Configure>
答案 2 :(得分:0)
根据Link:
你几乎没有选择。
1)为jetty指定自己的java.io.tmpdir java系统属性位置。
$ java -Djava.io.tmpdir=/path/to/my/new/temp/ -jar start.jar
2)在${jetty.home}
路径下创建一个“工作”目录(不管是什么)。
这将导致Jetty使用该工作目录,而不是java.io.tmpdir
属性设置为。
3)在WebAppProvider部署中指定tempDir属性。
仅对war文件部署方案有效,对基于上下文的部署无效。
如果您的etc/jetty-webapps.xml
中有start.ini
,则表示您已启用war文件部署。
编辑${jetty.home}/etc/jetty-webapps.xml
文件,并在WebAppProvider上再添加1个属性。
<Set name="tempDir">/path/to/my/preferred/temp/dir/for/all/webapps</Set>
4)使用基于上下文的部署在WebAppContext上设置tempDirectory属性。 不适用于war文件部署方案。
如果您的etc/jetty-context.xml
中有start.ini
,则表明您已启用基于上下文的部署。
编辑${jetty.home}/contexts/myapp.xml
并在WebAppContext上添加tempDirectory属性。
<Set name="tempDirectory">/path/to/my/preferred/temp/dir/for/this/context</Set>