Ant中的build.xml主要标签如下:
(1)<mkdir>创建文件夹
(2)<copy>拷贝文件
(3)<javac> 编译java文件
(4)<jar>打包class文件
(3)<javac> 编译java文件
(4)<jar>打包class文件
(5)<unzip>解压缩jar包
具体用法网上有很多,不过有一用法很值得一提,就是将多个jar包打成一个大的jar包,代码如下:
- <target name="jar" depends="compile">
- <echo message="Jar: ${name}"/>
- <unzip src="${hive.root}/lib/commons-logging-1.0.4.jar" dest="${build.dir.hive}/commons-logging/classes">
- <patternset>
- <exclude name="META-INF"/>
- <exclude name="META-INF/MANIFEST.MF"/>
- </patternset>
- </unzip>
- <unzip src="${hive.root}/lib/libfb303.jar" dest="${build.dir.hive}/fb303/classes">
- <patternset>
- <exclude name="META-INF"/>
- <exclude name="META-INF/MANIFEST.MF"/>
- </patternset>
- </unzip>
- <unzip src="${hive.root}/lib/log4j-1.2.15.jar" dest="${build.dir.hive}/log4j/classes">
- <patternset>
- <exclude name="META-INF"/>
- <exclude name="META-INF/MANIFEST.MF"/>
- </patternset>
- </unzip>
- <unzip src="${build.dir.hive}/hadoopcore/hadoop-0.20.1/hadoop-0.20.1-core.jar" dest="${build.dir.hive}/hadoop/classes">
- <patternset>
- <exclude name="META-INF"/>
- <exclude name="META-INF/MANIFEST.MF"/>
- </patternset>
- </unzip>
- <!-- jar jarfile="${build.dir}/hive_${name}.jar" basedir="${build.classes}" / -->
- <jar jarfile="${hive.root}/hugetable_jdbc_driver.jar">
- <fileset dir="${build.dir.hive}/commons-logging/classes" includes="**/*.class"/>
- <fileset dir="${build.dir.hive}/fb303/classes" includes="**/*.class"/>
- <fileset dir="${build.dir.hive}/log4j/classes" includes="**/*.class"/>
- <fileset dir="${build.dir.hive}/hadoop/classes" includes="**/*.class"/>
- </jar>
- </target>
第一步:解压需要的jar文件到一个特定目录。
第二步:将解压好的class文件一起压缩到目的jar包。
OK,就这么简单!
内容来自:http://blog.csdn.net/unetman/article/details/6721248