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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用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.

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

谢谢,Praveen R.

答案

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

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

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

<copy todir="${templates}">

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

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

这解决了我的问题。

以上是关于如何使用ant在war文件中创建和复制模板的主要内容,如果未能解决你的问题,请参考以下文章

如何在子进程python中创建和复制文件的内容

在 Windows Azure 中创建和流式传输复合清单文件

如何在应用程序包中创建和检查子目录

如何在 JPA 中创建和处理复合主键

如何在 Kotlin [Dagger-Hilt] 中创建和使用房间数据库

如何在 NetBeans 中创建我的项目的 war 文件?