ant编译build.xml文件

ant编译build.xml文件,第1张

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

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命令时,可以通过-D参数携带参数,传递到执行的XML文件中。

在build.xml中定义参数,类似:哪余

调用shell脚本,并携带两个参数:

此处功能调用相当于:姿兄sh test.sh $param1 $param2 。这里的arg里还可以写成是<arg line=" ${build.param1} ${build.param2} "/>,说明value和line的区别是,value表示作为1个参数,line表示用空格分开的多个参数。

在test.sh中打印参数,结果为命迹缓袭令中的数值。

搞定!

手机ant系统程序的作键此用是,Apache Ant,是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发。

Ant运行时稿袜迅需要一个XML文件, Ant通过调用target树,就可以执行各种task。每个task实现了特定接口对象。

由于Ant构建文件 是XML格式的文件,所以很容易好链维护和书写,而且结构很清晰。Ant可以集成到开发环境中。由于Ant的跨平台性和 *** 作简单的特点,它很容易集成到一些开发环 境中去。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/tougao/12255267.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-22
下一篇2023-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存