如何使用ant在war文件中创建和复制模板

时间:2017-12-19 10:39:19

标签: java ant war

我正在使用带有球衣的apache freemarker,我们在模板文件夹中使用.ftl模板,当我尝试使用模板创建一个不创建的war文件时。

<target name="war" depends="clean,compile,copy-resources">
    <war destfile="${dist}/sample.war" webxml="WEB-INF/web.xml">
        <fileset dir="WebContent"/>
        <webinf dir="WEB-INF" includes="**/log4j.properties"></webinf>
        <lib dir="${lib}"/>
        <classes dir="${build}"/>
        <templates dir="${templates}"/>
    </war>      
</target>

构建此代码时,正在说

war doesn't support the nested "templates" element.

类和lib文件夹正在添加,但模板文件夹未在war文件中创建。

谢谢, Praveen R。

2 个答案:

答案 0 :(得分:0)

查看war Task,然后查看该页面中的示例。 但是你应该使用zipfileset在战争中包含你的.ftl文件,以下是它的样子:

<zipfileset dir="${home.dir}/PATH_TO_FTL" includes="**/*.ftl" />

答案 1 :(得分:0)

要创建和复制模板文件夹,请使用以下代码

<copy todir="${templates}">

要将此文件夹添加到war文件,请使用此代码

<webinf dir="WEB-INF" includes="**/log4j.properties,templates/"></webinf>

这解决了我的问题。