700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > ant安装 环境变量配置 ant实例

ant安装 环境变量配置 ant实例

时间:2022-06-18 17:37:40

相关推荐

ant安装 环境变量配置 ant实例

(本文第一地址:/huangchanghuan/p/6597741.html)

最近需要使用ant打包项目,在服务器上面部署定时器执行任务,所以记录这此ant打包项目的过程;

1.java命令行基础要熟练(一些参数配置),才能避免ant配置参数不对而产生的bug

(配置javac时候,没有加debug="true",导致jar包运行,日志中输出不了类名,只有一个'?'号)

INFO -03-21.23:59:03.505 [?:?] 线程任务成功返回:线程执行完成.

2.ant打包项目还是其他工具打包,所有项目必须按要求使用jdk版本

一、安装ant

官方/bindownload.cgi下载新版(目前为Ant1.10.1)的ant,得到的是一个apache-ant-1.10.1-bin.zip的压缩包。将其解压到你的硬盘上,例如:C:\apache-ant-1.10.1。

二、配置环境变量

window中设置ant环境变量:

ANT_HOME C:/ apache-ant-1.10.1

path C:/ apache-ant-1.10.1/bin

classpath C:/apache-ant-1.10.1/lib

三、验证ant安装成功(如果验证不通过,请按前面步骤检查)

3.1进行如下操作验证:

依次:开始->运行->cmd,输入如下命令:ant

如果出现如下内容,说明安装成功:

【说明ant安装成功!因为ant默认运行build.xml文件,这个文件需要我们建立。】

3.2查看版本:ant -version

3.3如果验证不成功,请仔细检查环境配置.

四.ant实例

4.1项目结构

目标用ant生成sunstar-coupon-1.0.jar, 这个jar能执行JDMessageMonitor.main方法就可以了(所以后面ant配置文件build.xml只对JDMessageMonitor编译)

注意ant的配置文件build.xml放在项目根目录下(一般).

4.2项目build.xml

这是简单的配置,里面有详细的注解

<?xml version="1.0" encoding="GBK"?><!--project 用于定义一个ant工程,其中的三项name、default、basedir缺一不可。作用分别为:定义工程名、制定默认执行的任务、以及工程基础的路径型(它是计算其它路径的基础,一般情况下使用.即在java工程根目录即可)--><project name="coupon" default="jar" basedir="."><description>easy ant</description> <!--描述,个人觉得就是一提示作用,没什么实际用途--><property name="src" value="src" /><!--定义源文件路径,其中的value换成location也行,使用value的时候,${src}得到的就是src这个值,如果使用location,得到的是src这个目录的绝对路径--><property name="classes" value="ant/bin" /><!--编译后class文件存放的地方--><property name="jar_dir_name" value="C:\Users\peter\Desktop\sunstar-coupon-1.0.jar" /> <!--我们要生成的jar包--><property name="lib.dir" value="doc"/> <!--其他引用的jar包存放的位置--><!--创建任务init,负责初始化一些条件--><target name="init"><delete dir="${classes}" /><!--删掉原有文件夹--><mkdir dir="${classes}" /><!--重新生成文件夹--><delete file="${jar_dir_name}" /><!--删除旧的jar包--></target><!--设置classpath,配置引用的jar--><path id="classpath"><fileset dir="${lib.dir}"><include name="*.jar"/></fileset></path><!--创建编译任务,名字是compile,depends指定了comiple任务依赖init任务--><target name="compile" depends="init" description="comile target"><!--javac,编译,对应java中的javac命令--><!--srcdir定义源文件路径--><!--destdir定义编译后文件路径--><!--includeantruntime作用是指定编译任务是否包含ant的classpath,可有可无,不影响编译--><!--debug 设置为true 会把源文件的属性信息如源文件名称写入class文件 ; 如果为false以后log4j日志输出引用类名会找不到变成?号--><javac srcdir="${src}" destdir="${classes}" debug="true" includes="**/JDMessageMonitor.java" includeantruntime="true"><classpath refid="classpath"/> <!--前面已经配置的classpath,引入依赖的jar--></javac><copy todir="${classes}"><!--把src源文件目录下的配置文件 , 复制到编译后的目录中--><fileset dir="${src}"><include name="**/*.xml"/><include name="**/*.properties"/></fileset></copy></target><!--打包开始,名字为jar,依赖任务为compile--><target name="jar" depends="compile" description="make jar file"><jar jarfile="${jar_dir_name}" basedir="${classes}"><!--jar操作,jarfile指定jar包存放路径,basedir为编译后的class的目录--><!--为jar包指定manifest,当然,如果jar包不需要打成runnable的形式,manifest可以不要--><manifest><!--指定main-class--><attribute name="Main-Class" value="com.sunstar.coupon.monitor.JDMessageMonitor" /><!--java -jar sunstar-coupon-1.0.jar 默认执行com.sunstar.coupon.monitor.JDMessageMonitor.main方法--><!--指定Class-Path--><!--<attribute name="Class-Path" value="${libs}">--><!--</attribute>--></manifest></jar></target></project><!--ant.project.name是ant默认的一个变量,值为最上面定义的project的name ; ${DSTAMP}为日期,格式为1123;${TSTAMP}为时间,格式为2256,表示22点56分。-->

4.3执行与结果

4.3.1 在项目的根目录下,打开cmd,执行ant;

根目录(即是build.xml所在目录),输入ant,回车

4.3.2 ant执行结果截图与说明

我在build.xml中配置生成jar的路径是电脑桌面

<property name="jar_dir_name" value="C:\Users\peter\Desktop\sunstar-coupon-1.0.jar" /> <!--我们要生成的jar包-->

4.3.2 命令行运行sunstar-coupon-1.0.jar

sunstar-coupon-1.0.jar里面的结构就是我们编译后生成的目录结构,没有包含其他依赖的jar包,所以我们把sunstar-coupon-1.0.jar和所有依赖jar放在同一个文件夹中:

然后执行:java -cp "./sunstar-coupon-1.0.jar;./*" com.sunstar.coupon.monitor.JDMessageMonitor

(注意命令中-cp参数,必须把sunstar-coupon-1.0.jar放前面,保证先在sunstar-coupon-1.0.jar中找配置文件)

执行成功!!!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。