包含特定文件时没有问题



我不确定如何在这里配置我的ANT任务。我有这样的目录结构。在我的java文件夹中是我的属性文件。当我调用我的"战争"蚂蚁目标时,我想包含它们

-src
    -java
        -com
            -test
                -MyClass.java
                -messages.properties
                -messages_en_US.properties
-web
    -WEB-INF
    -index.xhtml

这是我的战争蚂蚁目标

<project name="myApp" basedir=".">
    <property name="build.dir" value="${basedir}/build" />
    <property name="src.dir" value="${basedir}/src" />
    <property name="dist.dir" value="${basedir}/dist" />
    <property name="web.folder" value="web" />
    <property file="env.properties" />
    <target name="war" depends="compile">
        <war destfile="dist/${ant.project.name}.war" webxml="${web.folder}/WEB-INF/web.xml">
            <fileset dir="${web.folder}">
            </fileset>
            <classes dir="build/classes"/>
        </war>
    </target>
</project>

但是当我查看war文件时,它没有*。属性文件

-WEB-INF
    -classes
        -com
            -test
                -MyClass.class

我尝试使用include标签,但仍然没有进展。

<fileset dir="${web.folder}">
    <include name="**" />
</fileset>

我错过什么了吗?由于

您是否尝试了以下方法来获取属性文件?:

<fileset dir="${src.dir}" includes="**/*.properties"/>

我想这和Harry Joy在评论里写的差不多。:)

一般来说,如果Java源目录中有.properties文件,则应该在编译阶段将它们复制到目标/classes目录

<javac ... />
<copy todir="target/classes">
  <fileset dir="src/java" includes="**/*.properties,**/*.xml" />
</copy>

请注意,在某些情况下,人们将这些文件分离到一个单独的文件夹中(这是maven中的默认方法),以保持更整洁。比如src/resources (maven使用src/main/resources)

你仍然需要做上面的复制

相关内容

  • 没有找到相关文章

最新更新