该用户从未签到
|
第一步安装ant 1,什么是ant" f8 @; S H8 Q1 s; @! k, x, |
ant是构建工具" J) Y( }/ k* ~. d u1 S# ?
2,什么是构建
0 i; G) z) L2 J! K% T, ^7 y概念到处可查到,形象来说,你要把代码从某个地方拿来,编译,再拷贝到某个地方去等等操作,当然不仅与此,但是主要用来干这个. |6 b- K6 s, V' `
3,ant的好处
/ C/ C* T: m0 d跨平台 --因为ant是使用java实现的,所以它跨平台
4 A' ]0 g$ l; O+ S) }: b: o. `- H使用简单--与ant的兄弟make比起来- L' u7 {- _+ V' [- g! W1 R
语法清晰--同样是和make相比2 e; \7 `6 y6 m0 w' I- @
功能强大--ant能做的事情很多,可能你用了很久,你仍然不知道它能有多少功能。当你自己开发一些ant插件的时候,你会发现它更多的功能。
* H1 j2 l! i, L) C2 I0 b1 M" P一,构建ant环境$ N, t, K! p1 B, @
要使用ant首先要构建一个ant环境,步骤很简单:; ^+ o( Q1 k0 M& x6 f6 T
1),安装jdk,设置JAVA_HOME ,PATH ,CLASS_PATH(这些应该是看这篇文章的人应该知道的)
8 q" R! q v8 H' G+ R- {) |2),下载ant 地址http://www.apache.org/ 找一个你喜欢的版本,或者干脆最新的版本
( N2 a+ ^, k4 s3 S. l" {9 Z3),解压ant 你得到的是一个压缩包,解压缩它,并把它放在一个尽量简单的目录,例如D:\ant-1.6虽然你不一 定要这么做,但这么做是有好处的。1 B# _5 c) }# {. Y+ ~/ ~' l) F
ant的配法:
; n* @3 C% T+ F6 a5 \1。解压ant的包到本地目录。 : _& \/ U1 C. [' k; |6 v- E
2。在环境变量中设置ANT_HOME,值为你的安装目录。 - |) D: P3 L8 C9 ]
3。在环境变量中设置JAVA_HOME,值为你的jdk安装目录。
7 u' S4 K9 R7 |) [: v" Y4。把ANT_HOME/bin加到你系统的path目录中去。
0 L4 w' }6 {# s* Z7 C& W6 l( eSET JAVA_PATH = C:\Program Files(x86)\Java\jdk1.6.0_21; JDK路径% }8 U ], z4 {0 X; [5 x4 F; z w
SET ANT_HOME=D:\jakarta-ant-1.5.1 //注意是Ant的安装目录,不是bin子目录 8 P( ~- t: C9 v$ y
SET PATH=%ANT_HOME%\bin; ' n* }' k" S ^4 _/ v5 ?
5),测试一下你的设置,开始-->运行-->cmd进入命令行-->键入 ant 回车,如果看到+ a% d; |+ H) H8 }5 F( |! M; Q4 ~
Buildfile: build.xml does not exist!
: z- W0 X7 \+ e! G: w! }; u* @Build failed
[( e# r( t2 I9 J& @, k9 g0 R那么恭喜你你已经完成ant的设置 第二步编写 build.xml - <?xml version="1.0" encoding="utf-8"?>/ ]4 h/ J2 ?* m( F# w0 |8 z% {
- 2 j1 |; a* T) t. w% S5 o
- <project name="javaWeb" basedir="." default="all">
! H& \) V( z) u0 N0 O4 ^; ?; [ - <path id="classpath">1 G: v& L% M) e+ G
- <fileset dir="./WebRoot/WEB-INF/lib">
' ]4 x* [0 ?$ I {5 A. J - <include name="**/*.jar" />
9 B5 p! Y% [* W - </fileset>
' c. _4 T) b$ T9 u# {+ B$ V - </path>
; k1 Y% o2 n z& @6 ?4 H# G, Y. ~, b" g
! }" H: J: S# L$ C- <target name="prepare" description="prepare ">4 Z, |! b# F+ j' o% o
- <mkdir dir="dist/tmp" />% G: W$ x% ~4 w2 c
- <mkdir dir="dist/module" />
1 n: y6 _" C/ K) L" W' q - <mkdir dir="dist/war" /> ; p7 Y! @& U9 ^9 m8 N7 i4 S
- </target>7 L5 [' n8 h* E
; Q0 V4 x: F+ N- <target name="compile" >
. ?7 e. `% } V: K - <mkdir dir="dist/tmp"/># E) F2 d! i9 {: \: I+ n
- <javac ) G% @2 \- B7 I( i& Z n* S4 C
- debug="true" - S& ^ W* w* A1 o
- fork="yes" destdir="dist/tmp" encoding="UTF-8" classpathref="classpath">% c6 F2 T' L+ i/ d( A4 C0 S
- <src path="src"></src> A7 G/ [6 ?4 X2 u) F1 R6 T/ T
- </javac>
1 N* A/ |" ^) Y! y; `/ U5 S - 1 _& q6 `0 q+ q5 }
- <copy todir="dist/tmp">
7 X0 K* J, L" b1 m5 C1 e& g - <fileset dir="src" includes="**/*.xml" excludes="**/*.java"></fileset>
) N4 B! L/ T7 i; m5 D - </copy>. s4 R1 e+ r6 | w6 i
-
$ z. k* {+ t* g' [7 p* _! i - </target>' r B. o# r4 u+ R) J
-
) M! o$ t! |# G/ L# i( h O0 ` - <target name="jar-web" description="web jar"># ?: J, m8 g" T
- <delete dir="dist/tmp" />
% D4 s S6 Q2 O) m) w% f% d0 @* S - <mkdir dir="dist/tmp" />) G' j5 ?: Y) G* \0 X4 n
- <delete file="dist/war/javaWeb-web.jar" />% a5 @3 o# | p/ F
- <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"/>- A9 x3 |* Z1 T' A; C
- <jar destfile="dist/war/javaWeb-web.jar" update="true">
7 I( _# x; I' I5 ~% N1 r4 N - <fileset dir="dist/tmp" includes="**/*.*" />
! d/ H: m' v. @9 L1 y - </jar>
7 A% w. M( ]( i% m( X - </target>0 G0 d* o8 d+ k5 c/ F. A
- 8 V3 N" c; ]& f" v8 N2 ]% K7 |
- <target name="war" description="war javaWeb" depends="jar-web">
6 i% K( I0 V; U3 A4 i5 ?+ u; a - <delete dir="dist/tmp" />
4 ~2 ~. E" e: Y& p7 t9 ?0 \) |- a - <mkdir dir="dist/tmp" />& Q* g1 s4 M1 C/ q8 D' u
- <delete file="dist/war/javaWeb.war" />; T: I& P+ Y& h5 c- A5 \
- <copy todir="WebRoot/WEB-INF/lib">% F7 j8 x/ H: ]
- <fileset dir="dist/war"/>% i; X; J* z4 f' p' Z
- </copy>! v- d" W+ g+ u% _( ]
- <war warfile="dist/war/javaWeb.war"7 {* q$ q7 { Y" m1 a7 c1 r
- includes="**/*.*"9 s) @4 _6 X! A) |5 }$ t% N
- excludes="WEB-INF/classes/**/*.class"- e- l; X1 n) R$ y$ ?
- webxml="WebRoot/WEB-INF/web.xml"
4 h. C3 k! ]4 ^ - update="true"
2 r4 \7 X2 v- m$ V C& f } - basedir="WebRoot"/>
& N% a+ l" A5 D - <delete file="WebRoot/WEB-INF/lib/javaWeb-web.jar" />
2 d. {2 E3 G9 d; } - </target>
1 Y) {* C+ X9 P( R -
1 o- l/ R% N7 t - % Y& b, N$ Y2 o5 @
- <target name="all" depends="prepare, jar-web, war">6 M6 D7 H- D; j! k" d1 N3 ^
- </target>
$ k& q3 @1 F- G5 d, ` - 8 }# I$ r; {" e
- </project>
& a9 M1 ~5 a% O# m: C
复制代码
: }% p: o2 C* @* K: }$ i
6 S& O$ m3 W3 a3 p7 p |
|