我正在使用Tomcat 6.0.26并且正在编写build.xml来部署war文件。下面的代码就是我现在所拥有的,我需要在/ META-INF /下打包context.xml,因为我希望有this configuration like #2。我搜索了war命令的属性,但我找不到像WEB-INF / web.xml的 webxml 那样的东西。
所以我的问题是,
1)是否有一个war属性将context.xml放在META-INF?
下2)如果没有这样的属性,那么在每个webapp的META-INF下放置context.xml的最佳方法是什么?
<target name="packwar">
<war destfile="${appname}.war" webxml="web.xml">
<lib file="${bin}/myapp.jar"/>
</war>
</target>
提前谢谢。
答案 0 :(得分:5)
您应该能够使用'war'任务的metainf
嵌套元素:
嵌套的metainf元素指定了一个 文件集。包含在此中的所有文件 fileset最终会出现在META-INF中 战争文件的目录。如果这 fileset包含一个名为的文件 MANIFEST.MF,文件被忽略了 你会收到警告。
这样的事情:
<target name="packwar">
<war destfile="${appname}.war" webxml="web.xml">
<lib file="${bin}/myapp.jar"/>
<metainf file="context.xml" />
</war>
</target>
有一个类似的选项 - “webinf” - 用于部署到WEB-INF目录。