该用户从未签到
|
第一步安装ant 1,什么是ant$ C; z/ e2 E6 K$ i
ant是构建工具4 m& G) z% Z, R& x$ g
2,什么是构建- j) S9 G6 E' N
概念到处可查到,形象来说,你要把代码从某个地方拿来,编译,再拷贝到某个地方去等等操作,当然不仅与此,但是主要用来干这个
* `! |, a7 e& t0 _/ g3,ant的好处- n% s& T7 I5 z4 s5 q" C
跨平台 --因为ant是使用java实现的,所以它跨平台
% K; o- q/ J% H2 x2 `3 L, O" o使用简单--与ant的兄弟make比起来0 F- u$ N. M* z' `
语法清晰--同样是和make相比
: Z8 w, p- d; K! i& Y8 ^( U功能强大--ant能做的事情很多,可能你用了很久,你仍然不知道它能有多少功能。当你自己开发一些ant插件的时候,你会发现它更多的功能。( x$ ^5 k! |- y) H5 L# z( ~
一,构建ant环境4 ]. @( R- s$ m: z) P n
要使用ant首先要构建一个ant环境,步骤很简单:
/ m+ {0 c9 W3 X9 S! H: r5 y* j1),安装jdk,设置JAVA_HOME ,PATH ,CLASS_PATH(这些应该是看这篇文章的人应该知道的)
1 G6 X" F* D+ V$ u" @2),下载ant 地址http://www.apache.org/ 找一个你喜欢的版本,或者干脆最新的版本
Z5 G* V0 Q d. S3),解压ant 你得到的是一个压缩包,解压缩它,并把它放在一个尽量简单的目录,例如D:\ant-1.6虽然你不一 定要这么做,但这么做是有好处的。
/ b3 I9 |+ G* u% ~/ bant的配法:
( c8 k* D6 p7 L# F$ y5 @2 s L" ~( U1。解压ant的包到本地目录。 8 u/ x1 B4 N7 L
2。在环境变量中设置ANT_HOME,值为你的安装目录。
* b& }, A8 V/ z0 S3。在环境变量中设置JAVA_HOME,值为你的jdk安装目录。
* m" [* |% d. v j) P8 x& B3 e; @( O4。把ANT_HOME/bin加到你系统的path目录中去。
5 F* Q: n1 |; F* }SET JAVA_PATH = C:\Program Files(x86)\Java\jdk1.6.0_21; JDK路径' g8 G7 U2 M' m: O* E Y
SET ANT_HOME=D:\jakarta-ant-1.5.1 //注意是Ant的安装目录,不是bin子目录
2 X9 W; e! \( C! y/ P: |# T: ~. E- USET PATH=%ANT_HOME%\bin; / N4 \; v+ C' D/ G2 `
5),测试一下你的设置,开始-->运行-->cmd进入命令行-->键入 ant 回车,如果看到0 Y6 t# ]# h+ D+ u% h( m
Buildfile: build.xml does not exist!
# D+ D* F d( u* I& v" |Build failed
) }$ }4 E/ N4 @6 n4 l那么恭喜你你已经完成ant的设置 第二步编写 build.xml - <?xml version="1.0" encoding="utf-8"?>7 m. [# w5 @, d5 o" h
/ g1 T- y# R" j5 W# t- <project name="javaWeb" basedir="." default="all">' U( E! I( H# {0 F( k
- <path id="classpath">
! F( s7 l, g0 O% G9 ~ - <fileset dir="./WebRoot/WEB-INF/lib">
7 o7 x' W: H0 Q) W9 p( { - <include name="**/*.jar" />, G- ^! N6 P& _
- </fileset>
* P( ?; f* Q9 a+ e; n - </path>1 I: k6 S5 U' B
# G8 [7 ~, B) ]' S* F- <target name="prepare" description="prepare ">
7 o) Z! r1 A. E - <mkdir dir="dist/tmp" />
' X* t1 H+ M) m! t% U - <mkdir dir="dist/module" />
$ M/ H0 R- C4 ^0 s5 [$ L% I8 l: {5 Y6 Q5 k - <mkdir dir="dist/war" /> 7 e/ l6 i4 q+ f4 P- i
- </target>. D* s" L: f. O5 A1 w
- : p+ B; O1 z# f& G& J2 k X3 L' j5 V
- <target name="compile" >
. e) `/ S+ l" b# ~6 b5 v$ l - <mkdir dir="dist/tmp"/>
) B# Y. a1 i% Z& u" c" v/ c; X - <javac
/ J' i) T. g- _: W" R( y! M# B# O - debug="true" / C) |2 V9 @$ ]8 c, B, [
- fork="yes" destdir="dist/tmp" encoding="UTF-8" classpathref="classpath">8 r0 p- v8 L' O
- <src path="src"></src>
5 G1 F- J) i, S% I/ ` - </javac>$ e j; u1 M, p* T( S' i
- 7 Y3 c/ _ W0 e1 D, f$ ^
- <copy todir="dist/tmp">
. X. j9 f6 J; ]- m% b* g - <fileset dir="src" includes="**/*.xml" excludes="**/*.java"></fileset>
6 `+ ?! L* z$ A& i - </copy>9 v! I) B! |, A) X3 \6 t. v4 ?8 y; b
-
3 [0 G) d$ D% V# j, U) o# ^/ y - </target>6 F& S6 S4 `0 ^- T; a
-
* X# w1 I K- g0 p4 V - <target name="jar-web" description="web jar">' y) R8 W* ]2 r
- <delete dir="dist/tmp" />1 B! G5 N* P* R" C. A' s
- <mkdir dir="dist/tmp" />
& t F" R/ u+ U4 p- a) G - <delete file="dist/war/javaWeb-web.jar" />. V! A2 }" N b! { M1 d/ j
- <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"/>( F8 u- K0 q9 u2 N
- <jar destfile="dist/war/javaWeb-web.jar" update="true">
4 L3 f/ i" o7 y) D6 y - <fileset dir="dist/tmp" includes="**/*.*" />
" Q( a! K4 L, A - </jar>5 Z9 O P+ |& v, x6 X' l7 F
- </target>
0 C' `7 R; ~% L4 Y - $ J3 J! b6 c# A4 Q ~
- <target name="war" description="war javaWeb" depends="jar-web">
4 N2 U" ~! B( h ]: `! C - <delete dir="dist/tmp" />3 O E3 N3 I( Z& _* f# \+ q- ]7 ]
- <mkdir dir="dist/tmp" />
* K- }& q% ?4 S% l7 [- P - <delete file="dist/war/javaWeb.war" />
! z6 c0 i9 r6 G/ D( S" X3 @ - <copy todir="WebRoot/WEB-INF/lib">
$ R4 H" q, S: C9 G0 Q% p - <fileset dir="dist/war"/>
9 a! U& T J+ G' L! w4 O - </copy>
* e L' i+ s. C x1 y - <war warfile="dist/war/javaWeb.war"! ] {5 S# ]( a& u0 o+ B# j' l$ C9 V7 s
- includes="**/*.*"
* Q+ `: `% U" k3 i( E' X/ q5 j - excludes="WEB-INF/classes/**/*.class"
6 Y( b' `+ w2 r7 t) Z# y - webxml="WebRoot/WEB-INF/web.xml"
: b0 `, S6 |$ t' B2 U( ^ - update="true"
5 O8 V c, D+ Z# ~- {7 d! L - basedir="WebRoot"/>
' i1 b8 P; Z" B& _! ^1 o s$ @ - <delete file="WebRoot/WEB-INF/lib/javaWeb-web.jar" /> 9 r8 p: t& T6 [% U
- </target>
% g0 I( ^1 | _' ~ - $ f2 A( c9 B6 D
5 \+ ?3 U: m4 t" J/ w) C; K! V- <target name="all" depends="prepare, jar-web, war">
4 c9 }9 ~: W8 B+ b1 x, ]" U - </target>/ W N2 [ `' t* B! o( R% x
- ) `1 z/ U9 r4 b2 Z; P9 B8 ?2 r
- </project>: b0 j; w& x6 n$ R: c9 W
复制代码
2 ]- H! s3 I6 n& T+ Q' z
v& u" G' Q9 i# G6 o6 W) R |
|