无法使用Ant删除文件

时间:2012-12-05 14:01:32

标签: java ant

我跟着this tutorial。我在/ WEB-INF / classes中构建了一个类“。 我的构建文件包含以下内容:

<target name="build" description="Compile main source tree java files">
   <mkdir dir="${build.dir}"/>
   <javac destdir="${build.dir}" source="1.5" target="1.5" debug="true"
             deprecation="false" optimize="false" failonerror="true">
      <src path="${src.dir}"/>
      <classpath refid="master-classpath"/>
   </javac>
</target>

但现在我只是干净,不要再建造,

<?xml version="1.0"?>
<project name="fax" basedir="." default="build">
    <property name="src.dir" value="src"/>
    <property name="web.dir" value="war"/>
    <property name="build.dir" value="${web.dir}/WEB-INF/classes"/>
    <property name="name" value="fax"/>

    <path id="master-classpath">
        <fileset dir="${web.dir}/WEB-INF/lib">
            <include name="*.jar"/>
        </fileset>
        <pathelement path="${build.dir}"/>
    </path>



    <target name="build" description="Compile source tree java files">

    </target>


    <target name="clean" description="Clean output directories">
        <delete>
            <fileset dir="${build.dir}">
                <include name="**/*.class"/>
            </fileset>
        </delete>
    </target>


</project>

但不幸的是,当我输入“ant”时,它会给我“Build successful”消息,但是这个文件没有被删除?谁有人告诉我这里有什么问题?感谢

2 个答案:

答案 0 :(得分:3)

键入“ant”时,默认目标执行,默认目标为“build”,如ant xml第一行中所定义

<project name="fax" basedir="." default="build">

要清理,请使用:“ant clean”或将默认目标从build更改为clean。但我认为您可能希望保留默认目标来构建并单独调用clean。

其他替代方法是使用目标的依赖性。即您可以在构建目标之前自动调用clean目标。

要执行此操作,请通过向其添加depends属性来更改构建目标标记,如下所示:     &LT; target name =“build”description =“编译源代码树java文件”依赖=“clean”&gt;

答案 1 :(得分:1)

键入ant就像键入ant build一样。

但是,删除操作是clean目标的一部分,因此如果执行ant build,则不应期望执行clean。

请尝试使用ant clean。然后,ant将执行clean目标。