ant打成ear

<!--这里的default要配置成所有target里最后执行的一个-->

<project name="ccbear" default="ear" basedir=".">

    <property name="app.dir" value="${basedir}" />

    <property name="src.dir" value="${app.dir}\src" />

    <property name="classes.dir" value="${app.dir}\build\classes" />

    <property name="webcontent.dir" value="${app.dir}\WebRoot" />

    <path id="build.classpath" description="编译时依赖的jar">

        <fileset dir="../ccbear/APP-INF/lib">

            <include name="*.jar" />

        </fileset>

        <pathelement location="${classes.dir}" />

    </path>

    <target name="prepare" depends="clean" description="创建classes文件夹">

        <mkdir dir="${classes.dir}" />

    </target>

    <target name="compile" depends="prepare" description="编绎">

        <javac srcdir="${src.dir}" destdir="${classes.dir}" fork="yes" debug="true" encoding="UTF-8" deprecation="on" optimize="off" includes="**" includeantruntime="false">

            <classpath refid="build.classpath" />

        </javac>

    </target>

    

    <target name="web-war" depends="compile" description="创建WEB发布包">

        <war destfile="${app.dir}/ccbweb.war" webxml="${webcontent.dir}/WEB-INF/web.xml">

        <!--将文件里的内容打成一个war包-->

            <fileset dir="${webcontent.dir}">

            <!--**表示所有的层级-->

                <include name="**/**.*"/>

            <exclude name="**/*.jar"/>

            <exclude name="**/*.class"/>

            </fileset>

        <!-- 将jar和class文件拷贝到war包的对应路径下。 -->

            <lib dir="../ccbear/APP-INF/lib">

            <include name="*.jar"/>

            <exclude name="tap_ejb.jar"/>

            <exclude name="ncrtpif.jar"/>

            <exclude name="struts.jar"/>

            <exclude name="ncrauth_ejb.jar"/>

            <exclude name="ant.jar"/>

            <exclude name="commons-net-1.4.1.jar"/>

            </lib>

            <classes dir="${basedir}/build/classes" />

        </war>

    </target>

<!--这里使用了相对路径,工程名不要随意变更-->

    <target name="ear" depends="web-war" description="创建WEB发布包">

        <ear destfile="${app.dir}/ccbear.ear" appxml="../ccbear/META-INF/application.xml">

            <fileset dir="../ccbear">

                <include name="APP-INF/**"/>

            </fileset>

            <fileset dir="../ccbear/APP-INF/lib" >

                <include name="engineejb.jar"/>

            </fileset>

        <fileset dir="${app.dir}" >

                <include name="ccbweb.war"/>

            </fileset>

        </ear>

    </target>

    

    <target name="clean">

        <delete>

            <fileset dir="${app.dir}">

                <include name="ccbweb.war"/>

            </fileset>

        </delete>

        <delete dir="${classes.dir}" />

    </target>

</project>

猜你喜欢

转载自zengshaotao.iteye.com/blog/2283226
ANT