Ant Java构建脚本示例

时间:2020-01-09 10:34:05  来源:igfitidea点击:

在本教程中,我将展示如何使用Ant构建Java项目。 Ant没有附带任何用于构建Java项目的预定义目标,因此我们必须编写自己的目标。但是,每次启动新的Java项目时都必须从头开始重写Ant构建脚本是一件很麻烦的事情。因此,本文为Java项目提供了一个简单的Ant构建脚本,我们可以将其用作自己的构建脚本的模板。

这是示例Ant构建脚本:

<project name="MyProject" basedir=".">

    <property name="version">1.2.3</property>
    <property name="dir.src">src/main/java</property>
    <property name="dir.build">build</property>
    <property name="dir.build.classes">${dir.build}/classes</property>
    <property name="dir.build.javadoc">${dir.build}/javadoc</property>
    <property name="file.jar">${dir.build}/MyProject-${version}.jar</property>

    <path id="projectClasspath">
        <fileset dir="lib">
            <include name="**.jar"/>
        </fileset>
    </path>

    <target name="clean">
        <delete dir="${dir.build}"/>
    </target>

    <target name="init">
        <mkdir dir="${dir.build}"/>
        <mkdir dir="${dir.build.classes}"/>
    </target>

    <target name="compile" depends="init">
        <echo>Compiling Java source</echo>

        <javac classpathref="projectClasspath"
               srcdir="${dir.src}"
               destdir="${dir.build.classes}" />
    </target>

    <target name="jar" depends="compile">
        <echo>Making JAR file</echo>

        <jar basedir="${dir.build.classes}" file="${file.jar}" />
    </target>

    <target name="javadoc">
        <echo>Making JavaDoc from source</echo>

        <javadoc sourcepath="${dir.src}" destdir="${dir.build.javadoc}"></javadoc>
    </target>

</project>

注意jar对象如何依赖于compile目标,而compile目标依赖于init目标。这样,我们可以确保在运行jar对象时已编译了所有代码。