继续学习ant

 今天由于打电话,打了两个小时的电话,结果一下子错过了学习的时间段,表示很惭愧,不过查了一些资料,感觉还不错,明天继续学习吧!

  ant入门到精通
Ant 的最完整build.xml解释
ant实用实例
Ant入门与进阶

 

  1 <?xml version="1.0" encoding="UTF-8"?>
  2 <project default="execute">
  3     
  4     <!--fileset可以设定一组文件集来进行操作,dir指明文件集要进行选择的路径,
  5     通过id可以指定这个文件的名称,在使用的时候进行直接的引入
  6     include和exclude可以设定包含返回和排除范围**/*.*所有目录中的所有文件
  7     -->
  8     <fileset id="src.path" dir="src">
  9         <include name="**/*.*"/>
 10         <!--<exclude name="**/*.java"/>-->
 11     </fileset>
 12     
 13     <target name="init">
 14         <delete dir="build"></delete>
 15         <mkdir dir="build"/>
 16         <mkdir dir="build/src"/>
 17         <mkdir dir="build/classes"/>
 18         <mkdir dir="build/dist"/>
 19     </target>
 20     
 21     <target name="copySrc" depends="init">
 22         <copy todir="build/src">
 23             <fileset refid="src.path"></fileset>
 24         </copy>
 25     </target>
 26     
 27     <target name="compile" depends="init">
 28         <javac destdir="build/classes" srcdir="src"></javac>
 29     </target>
 30     
 31     <target name="jar" depends="compile">
 32         <jar destfile="build/dist/hello.jar" basedir="build/classes">
 33             <manifest>
 34                 <attribute name="Main-Class" value="ant.zttc.edu.cn.HelloWorld"/>
 35                 <attribute name="Build-By" value="Konghao"/>
 36             </manifest>
 37         </jar>    
 38     </target>
 39     
 40     <target name="execute" depends="jar,copySrc">
 41         
 42         <echo>基于类路径的classname来完成执行</echo>
 43         <java classname="ant.zttc.edu.cn.HelloWorld" classpath="build/classes">
 44             <arg value="张三"/>
 45             <arg value="李四"/>
 46             <arg value="王五"/>
 47         </java>
 48         
 49         <echo>基于jar文件执行</echo>
 50         <java jar="build/dist/hello.jar" fork="true">
 51             <arg value="张三"/>
 52             <arg value="李四"/>
 53             <arg value="王五"/>
 54         </java>
 55     </target>
 56 </project>
 57 
 58 
 59 
 60 
 61 
 62 
 63 <?xml version="1.0" encoding="UTF-8"?>
 64 <project default="execute">
 65     
 66     <property name="build.dir" location="build"></property>
 67     <!--使用属性定义相应的路径时,一定使用location而不要使用value-->
 68     <property name="build.classes" location="${build.dir}\classes"></property>
 69     <property name="build.src" location="${build.dir}/src"></property>
 70     <property name="build.lib.dir" location="${build.dir}/dist"></property>
 71     <!--<property name="execute.class" value="ant.zttc.edu.cn.HelloWorld"/>
 72     <property name="jar.name" value="hello.jar"></property>
 73     -->
 74     
 75     <!--如果属性太多,可以将属性放置到一个外部文件中定义,之后进行引用
 76       特别注意:如果是路径不建议在外部文件中定义,因为此时就不会设置location的值-->
 77     <property file="build.properties"></property>
 78     
 79     <!--把环境变量中的参数到处到env这个变量中-->
 80     <property environment="env"></property>
 81     
 82     <target name="test">
 83         <echo>${ant.home}</echo>
 84         <echo>${ant.version}</echo>
 85         <echo>${env.CATALINA_HOME}</echo>
 86         <echo>${env.OS}</echo>
 87     </target>
 88     
 89     <!--fileset可以设定一组文件集来进行操作,dir指明文件集要进行选择的路径,
 90     通过id可以指定这个文件的名称,在使用的时候进行直接的引入
 91     include和exclude可以设定包含返回和排除范围**/*.*所有目录中的所有文件
 92     -->
 93     <fileset id="src.path" dir="src">
 94         <include name="**/*.*"/>
 95         <!--<exclude name="**/*.java"/>-->
 96     </fileset>
 97     
 98     <target name="init">
 99         <delete dir="${build.dir}"></delete>
100         <mkdir dir="${build.dir}"/>
101         <mkdir dir="${build.src}"/>
102         <mkdir dir="${build.classes}"/>
103         <mkdir dir="${build.lib.dir}"/>
104     </target>
105     
106     <target name="copySrc" depends="init">
107         <copy todir="${build.src}">
108             <fileset refid="src.path"></fileset>
109         </copy>
110     </target>
111     
112     <target name="compile" depends="init">
113         <javac destdir="${build.classes}" srcdir="src"></javac>
114     </target>
115     
116     <target name="jar" depends="compile">
117         <jar destfile="${build.lib.dir}/${jar.name}" basedir="${build.classes}">
118             <manifest>
119                 <attribute name="Main-Class" value="${execute.class}"/>
120                 <attribute name="Build-By" value="Konghao"/>
121             </manifest>
122         </jar>    
123     </target>
124     
125     <target name="execute" depends="jar,copySrc">
126         
127         <echo>基于类路径的classname来完成执行</echo>
128         <java classname="${execute.class}" classpath="${build.classes}">
129             <arg value="张三"/>
130             <arg value="李四"/>
131             <arg value="王五"/>
132         </java>
133         
134         <echo>基于jar文件执行</echo>
135         <java jar="${build.lib.dir}/${jar.name}" fork="true">
136             <arg value="张三"/>
137             <arg value="李四"/>
138             <arg value="王五"/>
139         </java>
140     </target>
141 </project>
View Code

 

posted on 2013-06-19 22:53  pony1223  阅读(316)  评论(0编辑  收藏  举报

导航