包含特定文件的Ant问题

时间:2011-09-13 05:22:06

标签: java ant

我不确定如何在这里配置我的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文件时,它没有* .properties文件

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

我尝试使用include标记但仍没有进展。

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

我想念的是什么?感谢

2 个答案:

答案 0 :(得分:0)

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

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

我猜这与哈利·乔伊在共通中所写的内容大致相同。 :)

答案 1 :(得分:0)

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

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

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

你仍然需要做上述副本。