该用户从未签到
|
第一步安装ant 1,什么是ant
! i0 f5 f0 o* ^% jant是构建工具
5 x0 ~) m4 y& T) i& q2,什么是构建
4 M2 Q* _/ i) Q" l3 D5 Q概念到处可查到,形象来说,你要把代码从某个地方拿来,编译,再拷贝到某个地方去等等操作,当然不仅与此,但是主要用来干这个
3 A g7 D/ T) V! r1 M3,ant的好处7 d/ k& R ]2 y9 z8 U. T4 C
跨平台 --因为ant是使用java实现的,所以它跨平台
$ x- J A8 r- b, L使用简单--与ant的兄弟make比起来9 I9 z$ Y1 Z. U; x- n& E1 s+ Y/ z0 a
语法清晰--同样是和make相比
( }+ }6 ^' \; ?2 U! m P% L功能强大--ant能做的事情很多,可能你用了很久,你仍然不知道它能有多少功能。当你自己开发一些ant插件的时候,你会发现它更多的功能。
# h1 [# |6 x4 m2 A( ?0 o# ^" ]- Z. W1 ^8 z3 t一,构建ant环境
5 b, y) B! u2 L要使用ant首先要构建一个ant环境,步骤很简单:4 x# b5 G0 d! m& K" s ~
1),安装jdk,设置JAVA_HOME ,PATH ,CLASS_PATH(这些应该是看这篇文章的人应该知道的)8 \& r; L! V" q, G! _, m
2),下载ant 地址http://www.apache.org/ 找一个你喜欢的版本,或者干脆最新的版本1 n) l% j. e3 P. z/ `9 G7 K
3),解压ant 你得到的是一个压缩包,解压缩它,并把它放在一个尽量简单的目录,例如D:\ant-1.6虽然你不一 定要这么做,但这么做是有好处的。
0 @* c, p4 h7 ]& v; E" q* Eant的配法:
" R5 |" G4 [: u. \+ w$ p8 j1。解压ant的包到本地目录。
0 ^5 W6 o4 O, z' B0 {9 J0 L2。在环境变量中设置ANT_HOME,值为你的安装目录。 7 m. K" p; N1 [. J
3。在环境变量中设置JAVA_HOME,值为你的jdk安装目录。
: x+ h4 W, X& G6 [3 Y4。把ANT_HOME/bin加到你系统的path目录中去。 # T" X; o: g! Y3 ?# a6 J
SET JAVA_PATH = C:\Program Files(x86)\Java\jdk1.6.0_21; JDK路径7 X" u0 q9 }: h* y
SET ANT_HOME=D:\jakarta-ant-1.5.1 //注意是Ant的安装目录,不是bin子目录
6 \% u' n" s# E6 ^4 c/ lSET PATH=%ANT_HOME%\bin; 8 y6 B+ k5 P" H
5),测试一下你的设置,开始-->运行-->cmd进入命令行-->键入 ant 回车,如果看到
7 A$ z- @7 s4 @/ [* aBuildfile: build.xml does not exist!
n0 s7 W( l8 }( t7 WBuild failed. f2 p3 g; M/ Y T2 v3 X' b {
那么恭喜你你已经完成ant的设置 第二步编写 build.xml - <?xml version="1.0" encoding="utf-8"?>* A: L/ R9 {, }
- ! }1 N. z- o& W+ f7 k: R. Z* Q
- <project name="javaWeb" basedir="." default="all">
' A8 u/ o0 M* K1 n; L9 H2 S7 a - <path id="classpath">
0 F7 V4 b2 J4 b2 l: i - <fileset dir="./WebRoot/WEB-INF/lib">7 C0 t! D \; ?- b+ }
- <include name="**/*.jar" />
1 P% E/ z! O3 | W/ h - </fileset>% Z- l/ r5 g- T0 O! U6 g/ w
- </path> B- }1 M8 A6 E. M
1 ], L# x X0 [- J* j/ ?! W! a. y- <target name="prepare" description="prepare ">( ]. a& @7 m; h3 P# I0 a M
- <mkdir dir="dist/tmp" />0 J3 T, T# n; w0 B; T
- <mkdir dir="dist/module" />
& u) M6 C9 \( E. w - <mkdir dir="dist/war" />
) Q& d5 ?8 [1 y3 ] - </target>
- B7 ]" T3 ?5 F) J8 m7 j5 h' ]
}( c, t9 `) d- <target name="compile" > " E4 J7 M6 E# i
- <mkdir dir="dist/tmp"/>
9 f* z4 z' ^( Y9 A - <javac # W* ^0 |& T# k( w
- debug="true"
6 @6 j$ l7 Q* {7 n - fork="yes" destdir="dist/tmp" encoding="UTF-8" classpathref="classpath">& [' u- |# Y4 O
- <src path="src"></src>
& k2 J* _5 m0 q4 G2 D - </javac>
b1 f" K+ F7 x' q- {# ^* X - $ D: h$ F; T ^7 ?' F
- <copy todir="dist/tmp">0 V4 M/ |/ \" N; G
- <fileset dir="src" includes="**/*.xml" excludes="**/*.java"></fileset> ]" K* O' U$ u, B2 I* X. O
- </copy>8 S5 H+ j( A1 x# J
- - a5 {1 e+ l. U6 L- e# u1 h
- </target>4 Y9 {$ D' M9 r6 K! |
-
5 n! @; m* a, e/ A% X' d - <target name="jar-web" description="web jar">7 d8 M: s: C( W& |* P
- <delete dir="dist/tmp" />; j& `" N, a$ f2 g9 z3 |3 c" m2 P
- <mkdir dir="dist/tmp" />0 F7 S/ }: }* c9 {( h7 T; ^& T
- <delete file="dist/war/javaWeb-web.jar" />. ]# I: k, f5 ?9 F* ]: E
- <javac srcdir="src/java" includes="com/acts/web/**/*.*,com/acts/web/**/**/*.*" debug="true" fork="yes" destdir="dist/tmp" classpathref="classpath" encoding="UTF-8" includeantruntime="on"/>9 }& g- r9 [* k
- <jar destfile="dist/war/javaWeb-web.jar" update="true">
$ q2 U! p8 G" x+ e: ? - <fileset dir="dist/tmp" includes="**/*.*" />1 Z0 d! j2 b- U) T: `% S
- </jar>
4 J& {; `2 d3 K9 L, N - </target>
+ Z1 P% ?; z4 j/ P) s -
+ b7 g! f% L T X T3 [9 R: M5 \ - <target name="war" description="war javaWeb" depends="jar-web">* e: o5 N6 K" w5 B
- <delete dir="dist/tmp" />
Y% i8 ~. }4 \% \1 E6 G( B - <mkdir dir="dist/tmp" />* q/ |+ V9 o1 {- j' L/ l% K/ P
- <delete file="dist/war/javaWeb.war" />
% n: ?7 p3 X3 B6 O - <copy todir="WebRoot/WEB-INF/lib">6 f- h6 i' G# N) N/ p: \8 \
- <fileset dir="dist/war"/>
* B2 p! h, r! |. Y: j - </copy>( w6 d' W S3 m1 ~1 j& _% V
- <war warfile="dist/war/javaWeb.war"
/ I# @) S; Z1 ^- @7 u8 D* q - includes="**/*.*". V' [, a# i# Z3 m9 @' g
- excludes="WEB-INF/classes/**/*.class"
, c) e+ p T$ U0 v/ [& y - webxml="WebRoot/WEB-INF/web.xml"
8 K/ T% ?( n% Q7 w2 L - update="true"
, v8 h: Q- K4 @4 F1 A - basedir="WebRoot"/>( I& \; J% U& [; V( ]
- <delete file="WebRoot/WEB-INF/lib/javaWeb-web.jar" /> 7 O5 W8 c4 e- O/ v
- </target>; L, q5 I3 U/ i
-
* }1 W8 l: }( q, j7 a& a - - R" Q b! Y3 v, F4 q: s, {6 V
- <target name="all" depends="prepare, jar-web, war">
j; b- V3 }. s$ a, i% ^ - </target>0 m8 g, u. z8 V& {) P. Y
8 ]) i# Y( n3 X* G- </project>
/ v- ^* f% R5 i$ D% ~ Q
复制代码 6 Z6 I; S4 L" I2 D/ ]- W
: k, Z3 v# s4 _# e( F |
|