该用户从未签到
|
第一步安装ant 1,什么是ant
! X/ y! F1 R H. {) j0 ~/ O3 { _6 Oant是构建工具* e, t$ T% q# ?8 v5 I
2,什么是构建
) d- s) Y6 E) r$ r概念到处可查到,形象来说,你要把代码从某个地方拿来,编译,再拷贝到某个地方去等等操作,当然不仅与此,但是主要用来干这个2 O( V7 Y2 \4 ]. L# i$ W
3,ant的好处 ]. M9 G& x! L8 J
跨平台 --因为ant是使用java实现的,所以它跨平台
8 O% U) _2 c' {1 V6 q% r使用简单--与ant的兄弟make比起来2 R1 r% m! z g7 L4 R: c" V0 q& m, N
语法清晰--同样是和make相比* ], q) y. i* M. P' S0 W0 B
功能强大--ant能做的事情很多,可能你用了很久,你仍然不知道它能有多少功能。当你自己开发一些ant插件的时候,你会发现它更多的功能。
& B- G0 X( b9 d: ?; z' @一,构建ant环境) h7 f- P# E9 G0 S( }- L" L
要使用ant首先要构建一个ant环境,步骤很简单:
{6 F% r. [( U/ v9 `8 O5 w1),安装jdk,设置JAVA_HOME ,PATH ,CLASS_PATH(这些应该是看这篇文章的人应该知道的)
$ x( \& c* R, b9 e/ r' \2),下载ant 地址http://www.apache.org/ 找一个你喜欢的版本,或者干脆最新的版本
" K, ^5 Q3 G; a( h& p5 _3),解压ant 你得到的是一个压缩包,解压缩它,并把它放在一个尽量简单的目录,例如D:\ant-1.6虽然你不一 定要这么做,但这么做是有好处的。5 } w( o" U) o' _! A! U! l: G$ R
ant的配法:
2 b2 S; g1 K t3 g3 e8 l6 o) j; B9 d8 A1。解压ant的包到本地目录。 9 f6 f5 v# W, y/ e% L+ m. ]( B) r
2。在环境变量中设置ANT_HOME,值为你的安装目录。
5 T3 |( X# I% V3。在环境变量中设置JAVA_HOME,值为你的jdk安装目录。
$ R2 e+ d3 a4 a: r) W0 T4。把ANT_HOME/bin加到你系统的path目录中去。
" `) V/ w0 W6 n# TSET JAVA_PATH = C:\Program Files(x86)\Java\jdk1.6.0_21; JDK路径
" \9 J* S! _9 G: z( V, \SET ANT_HOME=D:\jakarta-ant-1.5.1 //注意是Ant的安装目录,不是bin子目录
3 L. t9 y5 b; O3 Q1 J1 g1 ?7 JSET PATH=%ANT_HOME%\bin; / h! ^* R$ {6 C4 T7 g" |, D7 [( a
5),测试一下你的设置,开始-->运行-->cmd进入命令行-->键入 ant 回车,如果看到 s2 |6 S9 j' P2 I2 @
Buildfile: build.xml does not exist!
1 `. w9 s0 ]% M: ^) n# JBuild failed
. [. u4 C- D$ S; s7 G p% Y; W9 B那么恭喜你你已经完成ant的设置 第二步编写 build.xml - <?xml version="1.0" encoding="utf-8"?>$ c- ]: {$ L7 F( S) a) k
- ) S- P2 Q- W* j0 @
- <project name="javaWeb" basedir="." default="all">
0 u3 ]& @& v: R0 N8 [' p- } - <path id="classpath">6 G" _! j1 r( _, u2 c
- <fileset dir="./WebRoot/WEB-INF/lib">
1 @0 W, h' C6 \ - <include name="**/*.jar" />
, P7 Q9 X1 m/ P) c$ @* U - </fileset>& i) o& r* O& @6 I9 Y, t
- </path># d; R# S. B3 c/ K9 t
, x% d* s7 f7 _6 N+ a. I% p- <target name="prepare" description="prepare ">3 D8 n) s; U3 a; @) Q! B2 y/ J6 J
- <mkdir dir="dist/tmp" />2 l. e8 h9 Y' m6 G$ A
- <mkdir dir="dist/module" />+ h. x+ _: X+ {$ x$ i
- <mkdir dir="dist/war" /> $ z7 _# i* R6 s: Z. ]2 D* e
- </target>
) Z) f2 K5 V; Y/ M2 h) _8 B: d
" z8 k- y7 D4 `6 Z* _- <target name="compile" >
7 [% t5 Y1 F$ h0 L - <mkdir dir="dist/tmp"/>
1 V3 r, ^& X) o" h+ l - <javac
6 U1 C; q* h. o- L: H G5 B4 B - debug="true" ; a( s2 H/ C; d/ I
- fork="yes" destdir="dist/tmp" encoding="UTF-8" classpathref="classpath">
' h4 L+ ?% z5 u$ G" V - <src path="src"></src>+ o( v* f0 c4 y# m. C2 Y0 i5 o
- </javac>
; h: A- O$ \: |6 M. ]8 h -
% W( p1 [4 p+ [; b& }0 T3 _. E" C) K - <copy todir="dist/tmp">2 L$ J, J' O+ e" O3 F
- <fileset dir="src" includes="**/*.xml" excludes="**/*.java"></fileset> 3 P- r( N! g9 _
- </copy>5 p9 J' x" i2 Q7 R
-
4 }0 f% |( S* g# \1 J+ x - </target>
/ y0 S! I1 _8 x( F9 i -
" H2 Y! d9 Y* s2 O: s6 G - <target name="jar-web" description="web jar">
# X8 Y2 U6 O0 W5 } - <delete dir="dist/tmp" />% A; i; a5 ^" F3 I3 u& g q* q/ B
- <mkdir dir="dist/tmp" />
6 S8 \+ ?; x7 y1 \1 S1 G' e N# i/ ~ - <delete file="dist/war/javaWeb-web.jar" />
: _$ X) U0 K. q3 J+ i( ?, O/ }3 T# P - <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"/>
, F+ P6 O h- B( V/ B - <jar destfile="dist/war/javaWeb-web.jar" update="true">
. j+ ?! N) L% G ]# \9 A - <fileset dir="dist/tmp" includes="**/*.*" />/ R$ M) V7 U* D1 k! n0 r
- </jar>
4 o; x f6 U& [7 {/ i" U Y - </target>
2 c3 |# n, l2 K) R - . |2 H* d: W' t4 U8 D) T
- <target name="war" description="war javaWeb" depends="jar-web">/ p7 u6 m' [7 V2 m
- <delete dir="dist/tmp" />
; s7 H8 P' r* E# ~ p+ C1 b - <mkdir dir="dist/tmp" />$ @ l9 d6 @6 u6 A( r* s! a/ o: Q
- <delete file="dist/war/javaWeb.war" />
6 [3 ^: s, c: X" { - <copy todir="WebRoot/WEB-INF/lib">, q( u+ J0 @) m9 ?+ d8 L
- <fileset dir="dist/war"/>
' ?* z# l' U- R) N# T - </copy>
6 o; |8 ?' h' a% J0 u" Q - <war warfile="dist/war/javaWeb.war"; b6 S# ~0 N$ y* G1 g! v( s
- includes="**/*.*"
7 n) e4 o3 u* `( l; P/ e0 N - excludes="WEB-INF/classes/**/*.class"
* h( u+ n. Y5 o; s - webxml="WebRoot/WEB-INF/web.xml"
. t# `- M) u& Y/ r9 m - update="true"
. _) D% d: e6 _# W! r - basedir="WebRoot"/>& C7 |, |/ n" W& ?
- <delete file="WebRoot/WEB-INF/lib/javaWeb-web.jar" /> ; B7 d# }: {! T1 \/ m( K `/ h
- </target>' `7 _/ v: F4 ^, F( r* R
- 1 ], I& I, ^3 x% {
- 0 |9 j$ w" _6 |! c/ M ]0 d4 C9 f
- <target name="all" depends="prepare, jar-web, war">% a W# [! H# v7 I2 ~
- </target>2 `# F: V9 P. B/ G4 r" q
+ @3 a* P& e, |- </project>
0 p( G6 P* p% F5 l
复制代码
1 {+ R. U; f' a
2 d7 a( L2 I3 n. n |
|