0

下面是 Java 项目的 build.xml 的简化版本。它正确完成“构建”(创建正确的 .class 文件)并打印出“完成构建”。但是,它不会打印出“Starting jar”。我不明白什么?目标“jar”依赖于“build”,所以接下来应该运行它。

使用目标版本运行它。

<?xml version="1.0"?>
<project name="Project" basedir="." default="release">

    <!-- directories -->
    <property name="src.dir" location="src/main/java"/>
    <property name="cls.dir" location="private/classes"/>
    <property name="lib.dir" location="lib"/>

    <property name="jar.name" value="${ant.project.name}-${jar.ver}.jar"/>

    <target name="clean" description="Delete all generated files">
        <delete dir="${cls.dir}"/>
        <delete dir="${lib.dir}"/>
    </target>

    <target name="build" depends="clean">
        <mkdir dir="${cls.dir}"/>
        <javac
            destdir="${cls.dir}"
            nowarn="off"
            fork="yes"
            debug="on">
            <classpath>
                <path path="${run.classpath}"/>
            </classpath>
            <src path="${src.dir}"/>
        </javac>
        <echo message="Finishing build"/>
    </target>

    <target name="jar" depends="build">
        <echo message="Starting jar"/>
        <mkdir dir="${lib.dir}"/>
        <jar destfile="${lib.dir}/${jar.name}">
            <fileset dir="${cls.dir}"/>
            <fileset dir="${src.dir}" includes="**/*.properties"/>
            <fileset dir="${src.dir}" includes="**/*.xml"/>
        </jar>
    </target>

    <target name="release" depends="jar" description="Entry point">
    </target>

</project>
4

1 回答 1

0

如下更新发布目标,注意发布依赖于构建然后 jar。即依赖=“构建,jar”即

    <target name="release" depends="build,jar" description="Entry point">
       <echo message="release ..."/>
    </target>
于 2013-10-11T00:12:32.427 回答