ant文件简要介绍

最近用ant的命令比较多,所花了些时间试着自己写build文件,其中牵涉的元素我就不多说,因为相关的介绍google一下很多,我这里把xml文件贴出来方便大家作为模板使用,我的工程文件是这样的有个src目录,其下面放了相关的java文件,另外一个lib目录,放置了用户自定的jar包等,在此做了个打包HelloWorld程序的ant 文件,如下程序片段:

import java.io.IOException;
/**
*HelloWorld
*/
public class HelloWorld{

public static void main(String[] args)throws IOException{
System.out.println("HelloWorld!");
}
}

[b]针对这个java类进行打包的ant file如下:[/b]

<?xml version="1.0" encoding="UTF-8"?>
<project default="build" basedir=".">
<property name="appname" value="HelloWorld" />
<property name="base" value="." />
<property name="src.dir" value="${base}\src" />
<property name="lib.dir" value="${base}\lib" />
<property name="dist.dir" value="${base}\dist" />
<property name="classes.dir" value="${base}\classes" />
<!--初始化基本信息如路径等-->
<target name="init">
<mkdir dir="${base}\classes"/>
<mkdir dir="${base}\dist"/>
<echo message="create folder successful"/>
</target>
<!--将src.dir下的所有java文件进行编译-->
<target name="build" depends="init">
<javac srcdir="${src.dir}" destdir="${classes.dir}">
<include name="**/*.java" />
</javac>
<!--将${classes}目录及${src.dir}目录下的文件都打包成test.jar其中所有Test.class除外-->
<jar destfile="${dist.dir}/test.jar">
<fileset dir="${classes.dir}" excludes="**/Test.class" />
<!-- 指定Main-class-->
<manifest>
<attribute name="Main-class" value="HelloWorld"/>
</manifest>
</jar>
<!--将lib.dir下的所有class及jar文件copy到dist.dir目录下-->
<copy todir="${dist.dir}" overwrite="true" flatten="true">
<fileset dir="${lib.dir}">
<include name="*.class" />
<include name="*.jar" />
</fileset>
</copy>
</target>
<!--运行一个类,类名为HelloWorld-->
<target name="run" depends="build">
<java classname="HelloWorld">
<classpath>
<pathelement path="${classes.dir}"/>
</classpath>
</java>
</target>
<!--清除classes.dir及dist.dir下的所有内容-->
<target name="clean" depends="init">
<delete includeEmptyDirs="false">
<fileset dir="${classes.dir}" />
<fileset dir="${dist.dir}" />
</delete>
</target>
</project>

[b]运行结果如下:[/b]
E:\anttest>ant
Buildfile: build.xml

init:
[mkdir] Created dir: E:\anttest\classes
[mkdir] Created dir: E:\anttest\dist
[echo] create folder successful

build:
[javac] Compiling 1 source file to E:\anttest\classes
[jar] Building jar: E:\anttest\dist\test.jar
[copy] Copying 2 files to E:\anttest\dist

BUILD SUCCESSFUL
Total time: 1 second
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值