该用户从未签到
|
第一步安装ant 1,什么是ant- G2 k2 N K" ^0 j3 E1 g; O
ant是构建工具
! f6 s: r, r. D8 m8 V/ c3 ~2,什么是构建
/ N _4 h4 O8 d, }6 U概念到处可查到,形象来说,你要把代码从某个地方拿来,编译,再拷贝到某个地方去等等操作,当然不仅与此,但是主要用来干这个
1 G7 b }* H& M; K6 [0 S3,ant的好处
' H' n& J5 r6 G跨平台 --因为ant是使用java实现的,所以它跨平台
$ B j: [3 A6 b( ~( `使用简单--与ant的兄弟make比起来5 \1 M$ W; Y) K" q, l% N; [8 e8 N3 x
语法清晰--同样是和make相比
0 ~3 O: A( H5 A& E功能强大--ant能做的事情很多,可能你用了很久,你仍然不知道它能有多少功能。当你自己开发一些ant插件的时候,你会发现它更多的功能。' r( q6 A. K, q- o5 ?! \& z- X
一,构建ant环境
7 E3 k7 C, r9 S: @7 V' T要使用ant首先要构建一个ant环境,步骤很简单:& R3 A/ @7 i6 W+ h: Y% O: V4 O& @2 x
1),安装jdk,设置JAVA_HOME ,PATH ,CLASS_PATH(这些应该是看这篇文章的人应该知道的)# `! r& {8 a' s; r) r4 L: I2 [
2),下载ant 地址http://www.apache.org/ 找一个你喜欢的版本,或者干脆最新的版本/ I( E6 |4 m! p3 o' g# |" v# u2 O a0 r
3),解压ant 你得到的是一个压缩包,解压缩它,并把它放在一个尽量简单的目录,例如D:\ant-1.6虽然你不一 定要这么做,但这么做是有好处的。
9 l# Z# ?4 |4 V: vant的配法:
* |: n0 q4 y0 e0 y& Y$ p3 L1。解压ant的包到本地目录。 $ A$ C6 b/ i' q/ M
2。在环境变量中设置ANT_HOME,值为你的安装目录。
& d' g$ p6 } B: k# e3。在环境变量中设置JAVA_HOME,值为你的jdk安装目录。 " q" a9 v3 a4 ^ l/ z0 Y
4。把ANT_HOME/bin加到你系统的path目录中去。 - R9 ~3 f6 Q/ H$ {! H
SET JAVA_PATH = C:\Program Files(x86)\Java\jdk1.6.0_21; JDK路径- e9 B! s) g( T
SET ANT_HOME=D:\jakarta-ant-1.5.1 //注意是Ant的安装目录,不是bin子目录
l9 Y7 l0 M9 E8 \ s3 j) NSET PATH=%ANT_HOME%\bin;
" V( o* b. _3 C8 q* _+ z5),测试一下你的设置,开始-->运行-->cmd进入命令行-->键入 ant 回车,如果看到
% ^' ]) C9 ` {Buildfile: build.xml does not exist!
0 X$ ]- x4 _- w: l3 g; I G3 d; ^Build failed: s6 @5 L+ k. C/ D) a
那么恭喜你你已经完成ant的设置 第二步编写 build.xml - <?xml version="1.0" encoding="utf-8"?>) |. A0 u* n5 c- c5 v3 ]% W
- / y/ h5 j5 ]7 d k9 Y) |' n5 V
- <project name="javaWeb" basedir="." default="all">
' ^) U+ ~) J2 X2 G* a - <path id="classpath"># [8 |, u1 ~2 M0 S* r5 o
- <fileset dir="./WebRoot/WEB-INF/lib">
, @! u3 h7 i w T$ ?, O - <include name="**/*.jar" />
# i( v" r0 B: Z; g3 K+ z& A - </fileset>0 d& z1 b* ?) R& d- p
- </path>
3 ]% a/ F+ p( z/ B: Z7 S* p3 }4 y
$ m8 g# R' E( f5 j( G0 S o4 M- <target name="prepare" description="prepare ">& w6 o( E$ S5 r% _' ]$ w' g7 `
- <mkdir dir="dist/tmp" />/ f# t: E$ `4 n( v3 Z
- <mkdir dir="dist/module" />
) n) P! s6 C% T: h - <mkdir dir="dist/war" />
7 U7 f1 N4 `% R - </target>5 V! a' c! l' n2 w! h
% ?; W6 D/ a7 ]0 ^+ S5 ]7 T- <target name="compile" > 4 i" ]) v' y- T1 |% W: [% e
- <mkdir dir="dist/tmp"/>0 M$ F6 w% y; D& {0 {! v# n* {' d
- <javac
- L1 R3 M9 J) k, P - debug="true"
! |, | @9 k- B1 o6 f# T - fork="yes" destdir="dist/tmp" encoding="UTF-8" classpathref="classpath">1 L7 U# v7 I- `! i9 P
- <src path="src"></src>* K! z6 Z' C. G" Y) F# {; ~
- </javac>
) r, Q8 H |8 y n C2 O, I - ! V4 n( h0 {& ], V! s- n
- <copy todir="dist/tmp">
: `- F; M7 {4 I! F6 I9 U; | - <fileset dir="src" includes="**/*.xml" excludes="**/*.java"></fileset>
' D. E' c0 W7 \3 t. E - </copy>) ]% I! e' r7 ^4 q' \, K+ N- R2 S
- % h2 U. `8 C8 o/ z
- </target>. y: Q, B |; p3 F" G
- : m+ Y5 z7 _: d( A# ]" j* Y9 `( W J
- <target name="jar-web" description="web jar">
6 d" _3 _* i9 y; d2 v - <delete dir="dist/tmp" />
) L0 d. O& F. x8 { l9 C - <mkdir dir="dist/tmp" />8 l4 X% n* T& x, Q1 K2 D
- <delete file="dist/war/javaWeb-web.jar" />7 C4 Z/ ]) K: e- r+ l, ~
- <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"/>) `) x1 }3 l/ M
- <jar destfile="dist/war/javaWeb-web.jar" update="true">1 q- u7 S/ x# ~- n
- <fileset dir="dist/tmp" includes="**/*.*" />. f w* p, H6 \5 l/ T
- </jar>
, a4 U% M5 Q/ F - </target>, G; i8 q8 Q% r* S/ }) N8 p
- , n( E! p- M$ ], {
- <target name="war" description="war javaWeb" depends="jar-web">; I! h* H1 |' x$ m( j {4 _
- <delete dir="dist/tmp" />
6 ^7 f! S; z# H1 \1 d& V - <mkdir dir="dist/tmp" />
; \* p! P5 Q \$ x1 e0 | i" H - <delete file="dist/war/javaWeb.war" />
9 }% F+ F; k& J% J8 z2 g - <copy todir="WebRoot/WEB-INF/lib">
* U K: R3 W( ]# T9 ]8 c - <fileset dir="dist/war"/>
3 u; B" ^* C7 p- R- ` - </copy>
& S0 u! A; Q+ J; t. m, O! K: s - <war warfile="dist/war/javaWeb.war"
3 c, Z( p7 C, H+ g - includes="**/*.*"7 q% z( ]3 Q; T8 `) i% \
- excludes="WEB-INF/classes/**/*.class"
: ]1 t, O% Y9 p5 z& P s - webxml="WebRoot/WEB-INF/web.xml"
/ ?. y2 q+ _, ?- j' U! z - update="true" , d0 P" R% g" N, X1 g1 A* s9 I- i- h& j' ~
- basedir="WebRoot"/>
/ g' A" E4 f! f' ]8 @$ O5 | - <delete file="WebRoot/WEB-INF/lib/javaWeb-web.jar" />
( A/ ~9 A! j" p/ c) c( o - </target>; |) t- l5 ^, P" n. B3 N( O- B
-
% z* ?# Q! R; j5 v+ `
6 K" C2 g2 `2 |4 J- <target name="all" depends="prepare, jar-web, war">
9 C Y& V, R; a6 r) @ - </target>! X# {5 m8 [/ U4 M
- . v* E C! [- j7 T+ S
- </project>* u. t3 ?! @# M8 @& F) h+ x1 W$ o
复制代码
0 R9 ]1 k8 k! k" K9 p 2 E: e/ b. T! I+ Y7 l) D* J
|
|