美文网首页
ant编译build.xml文件

ant编译build.xml文件

作者: 小母牛不生产奶 | 来源:发表于2018-10-11 21:49 被阅读50次

    折腾了大半天,可算捣腾出来了,这里需要提醒注意如下几点:

    1、如果jdk是1.6及以下,则需要使用的ant版本是1.9.x;

    2、如果jdk是1.8,则需要使用ant版本是1.10.x;

    3、可用eclipse导出war包,将lib目录下的jar包放到一个目录下,然后直接引用,避免遗漏掉jar包没导入进去。

    以下是build.xml文件内容,安装好ant后,直接执行ant build.xml即可打包。

    <?xml version="1.0" encoding="UTF-8"?>

    <!-- 定义一个工程,默认任务为warFile。 -->

    <project name="bing-info" default="warFile" basedir=".">

        <!-- 指定jdk 貌似这里指定也没什么用~-->

        <property name="env.JAVA_HOME" value="C:/Program Files/Java/jdk1.8.0_101"/>

        <!-- 定义属性,打成war包的名称。 -->

        <property name="warFileName" value="nbAPP.war"></property>

        <!-- 指定war包路径及依赖包路径   这里需要指定工程的路径 -->

        <property name="compilePath" value="D:/project/nbAPP"/>

        <!-- 定义路径,编译java文件时用到的jar包。 -->

        <path id="project.lib">

            <fileset dir="${basedir}/lib">

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

            </fileset>

        </path>

        <!-- 定义任务,清空任务:清空原有的class文件,创建新的build路径。 -->

        <target name="clean">

            <delete dir="${compilePath}/build" />

            <mkdir dir="${compilePath}/build" />

        </target>

        <!-- 定义任务,编译src文件夹中的java文件,编译后的class文件放到创建的文件夹下。 -->

        <target name="compile" depends="clean">

            <javac srcdir="${basedir}/src/main" debug="true" includeantruntime="false" encoding="UTF-8" >

                <classpath refid="project.lib">

                </classpath>

            </javac>

        </target>

        <!-- 定义默认任务,将class文件集合成jar包。 -->

        <target name="warFile" depends="compile">

            <!-- 删除原有war包。 -->

            <delete dir="${compilePath}/${warFileName}" />

            <!-- 建立新war包。 -->

            <war destfile="${compilePath}/${warFileName}" webxml="${basedir}/WebRoot/WEB-INF/web.xml">

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

                <fileset dir="${basedir}/WebRoot">

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

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

                    <include name="WEB-INF/classes/**"/>

                </fileset>

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

                <lib dir="${compilePath}/lib" />

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

                <!-- 将资源文件拷贝进war对应路径下 -->

                <classes dir="${basedir}/src/main/resources" />

            </war>

        </target>

    </project>

    相关文章

      网友评论

          本文标题:ant编译build.xml文件

          本文链接:https://www.haomeiwen.com/subject/yfpiaftx.html