java - ant的基本用法
访问量: 2265
ant 跟 rake 一样,就是自动化执行一些命令的脚本, 之所以 不使用 shell, 目的是为了能够让编程语言更加便利的操作这个过程, 所以,没有用 `run_local_command "echo hi" ` 这样的命令,而是使用了XML语言来做中间性的过度.
eclipse 和所有主流编辑器中,都有对ant的支持:
下面就是个例子,可以直接拿到项目当中使用:
<?xml version="1.0" encoding="UTF-8"?>
<project basedir="." name="project" default="run">
<!-- 定义各种变量 -->
<property name="lib.dir" value="WebContent/WEB-INF/lib"/>
<property name="src.dir" value="src"/>
<property name="build.dir" value="build/classes"/>
<property name="main.class" value="com.las.controller.AnalysisTextFile"/>
<property name="target_jar_file" value="las.jar"/>
<!-- 定义编译路径 -->
<path id="classpath">
<fileset dir="${lib.dir}" includes="**/*.jar"/>
<fileset dir="external_libs" includes="**/*.jar"/>
</path>
<target name="clean">
<delete dir="${build.dir}"/>
</target>
<target name="compile">
<mkdir dir="${build.dir}"/>
<javac srcdir="${src.dir}" destdir="${build.dir}" classpathref="classpath"/>
</target>
<target name="run" depends="jar">
<java fork="true" classname="${main-class}">
<classpath>
<path refid="classpath"/>
<path location="${jar.dir}/${ant.project.name}.jar"/>
</classpath>
</java>
</target>
<!-- 打包jar任务 -->
<target name="jar">
<mkdir dir="build/jar"/>
<jar destfile="${target_jar_file}" basedir="${build.dir}">
<manifest>
<attribute name="Main-Class" value="${main.class}"/>
</manifest>
</jar>
</target>
<!-- web 开发才用的到 -->
<target name="package">
<delete file="Las.war" />
<war destfile="Las.war">
<fileset dir="${basedir}\WebContent" />
<classes dir="build/classes" />
</war>
</target>
<target name="packageThin">
<delete file="Las.war" />
<war destfile="Las.war">
<fileset dir="${basedir}\WebContent" >
<exclude name="**/*.jar" />
</fileset>
<classes dir="build/classes" />
</war>
</target>
</project>