该用户从未签到
|
第一步安装ant 1,什么是ant0 I" u! b0 F @
ant是构建工具 @* K+ B" c! P8 c' ]4 Q# _5 k
2,什么是构建# j/ |3 Q8 G- O! N
概念到处可查到,形象来说,你要把代码从某个地方拿来,编译,再拷贝到某个地方去等等操作,当然不仅与此,但是主要用来干这个8 g3 f; W9 n y6 p
3,ant的好处* K4 u& V4 k7 j# Y4 R
跨平台 --因为ant是使用java实现的,所以它跨平台- {4 ]) ` [$ M# [% G# _. P
使用简单--与ant的兄弟make比起来
8 m# C. R; ]! b% g2 E, `" h% P8 ]语法清晰--同样是和make相比
5 n! e- H: A" H功能强大--ant能做的事情很多,可能你用了很久,你仍然不知道它能有多少功能。当你自己开发一些ant插件的时候,你会发现它更多的功能。4 v5 J: @' y( F$ f B
一,构建ant环境
, d& C" q6 Z* ]1 D ^- F! |, A* Z要使用ant首先要构建一个ant环境,步骤很简单:# u5 I2 }8 E. x3 R5 f
1),安装jdk,设置JAVA_HOME ,PATH ,CLASS_PATH(这些应该是看这篇文章的人应该知道的)2 R$ W3 Z; D6 ~ J( i6 G: z' r
2),下载ant 地址http://www.apache.org/ 找一个你喜欢的版本,或者干脆最新的版本
4 z' i" c0 J7 r; q4 Z3),解压ant 你得到的是一个压缩包,解压缩它,并把它放在一个尽量简单的目录,例如D:\ant-1.6虽然你不一 定要这么做,但这么做是有好处的。
: h( G; C& z. }ant的配法: 8 n9 B4 n: I& I0 K& F
1。解压ant的包到本地目录。 0 S Q3 D; I/ n# O5 z) A/ ^1 h/ b U4 x+ ~2 U
2。在环境变量中设置ANT_HOME,值为你的安装目录。
A8 j7 k, H( I }. g' g3。在环境变量中设置JAVA_HOME,值为你的jdk安装目录。 8 n3 _0 g: w8 C9 s2 u. R2 z: D
4。把ANT_HOME/bin加到你系统的path目录中去。
! ]8 N* Q/ X5 ^* iSET JAVA_PATH = C:\Program Files(x86)\Java\jdk1.6.0_21; JDK路径# ^0 P5 p( }* f, G
SET ANT_HOME=D:\jakarta-ant-1.5.1 //注意是Ant的安装目录,不是bin子目录
, A' j" ?0 @$ \- t: b; ^. o4 [SET PATH=%ANT_HOME%\bin; 6 }. \) x3 R @% _/ f
5),测试一下你的设置,开始-->运行-->cmd进入命令行-->键入 ant 回车,如果看到
- d2 ^: y: j: }# G5 QBuildfile: build.xml does not exist!
0 ]% ?7 w R- W- k' f7 a& RBuild failed4 I/ m6 j. b' T m
那么恭喜你你已经完成ant的设置 第二步编写 build.xml - <?xml version="1.0" encoding="utf-8"?>
/ V& q4 u% ^0 y, L1 @
7 F' o$ b p( J1 f- <project name="javaWeb" basedir="." default="all">
1 }, W- Z; @' R% t$ S - <path id="classpath"># h$ S5 W2 b1 N8 ` A5 ?
- <fileset dir="./WebRoot/WEB-INF/lib">
7 C' t3 v; K% y4 y. ]" F9 f4 k4 B - <include name="**/*.jar" />
9 }% m0 { B9 ^) b/ E- ?* | - </fileset>+ d/ U! Q& l4 ~$ |# J
- </path>8 p. C3 u1 Y8 h# x7 g0 ~: s) ^" q
5 N" `# Y' J. t) |- <target name="prepare" description="prepare ">/ o& ~1 w: S, Y7 V
- <mkdir dir="dist/tmp" />" f8 }9 e: Q+ v4 p/ h9 B5 [
- <mkdir dir="dist/module" />
: v5 l5 J2 R6 W. `' q; B" } - <mkdir dir="dist/war" /> , g. s7 C2 ~. c# p. R4 D
- </target>
. x2 ?0 q# l9 J" r$ _! Y. B - ( k4 {1 `; ^; u5 L) v1 l
- <target name="compile" > 3 t* l \ f5 l0 J1 n7 ^
- <mkdir dir="dist/tmp"/>" s* p7 a- J4 o9 E$ h2 A; a- W k
- <javac
8 M+ n: m' m1 j& Z! N! C - debug="true"
0 D) @ v9 z2 z- ~1 a - fork="yes" destdir="dist/tmp" encoding="UTF-8" classpathref="classpath">
8 ~ Q* i4 m, z - <src path="src"></src>
2 S# X: D4 ? k0 C% w) o5 F7 w - </javac>
0 T) y6 V Q, D, m& F0 { - - r- H/ s% \& W$ O
- <copy todir="dist/tmp">" @" v2 J, i2 w
- <fileset dir="src" includes="**/*.xml" excludes="**/*.java"></fileset>
, c! S9 {' J8 }% p! |' S - </copy>
b: @) Z0 _! S -
& Z5 I4 n) {8 f. K. S: s& b. i" J: ~ - </target>
0 U, Y( _ Q4 U N -
0 Q7 Y. i5 }% H" m- G5 i8 ? - <target name="jar-web" description="web jar">
5 I$ G w1 f2 q( T - <delete dir="dist/tmp" />, t/ X! J: s7 V& b
- <mkdir dir="dist/tmp" />
& _8 S) e L, B6 M& Z - <delete file="dist/war/javaWeb-web.jar" />
5 T* ]) Q5 s( K% J# h6 p# I) b7 w - <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 u' K* j+ M0 A8 w - <jar destfile="dist/war/javaWeb-web.jar" update="true">
/ O8 D) K8 ]3 A# `+ O; v - <fileset dir="dist/tmp" includes="**/*.*" />: F5 f$ w9 m" R' ^ y
- </jar>1 B. @) h; w+ ]
- </target>
( _- o& q* \ S$ T$ c; n - 7 Z1 Z2 y& Y: j; J S* }
- <target name="war" description="war javaWeb" depends="jar-web"> m3 N* K3 x3 s4 p
- <delete dir="dist/tmp" />
% `; S0 P; E1 b) L% ` - <mkdir dir="dist/tmp" />) \/ c6 q# v9 g( R1 C+ i' Z+ A7 h
- <delete file="dist/war/javaWeb.war" />
+ h$ o Z \) H# X; I - <copy todir="WebRoot/WEB-INF/lib">
" C' ^, [" y! D% | W* e# f - <fileset dir="dist/war"/>
8 ^& Q0 k# I/ o- ]+ n; k, e - </copy>
& a1 x1 G/ O( [1 u' j: S$ ]" R - <war warfile="dist/war/javaWeb.war"
0 z% _1 l1 W; ~0 V) Y. y' @ - includes="**/*.*"
7 O3 t, P; X5 x - excludes="WEB-INF/classes/**/*.class"5 R. W7 `! _! x! d
- webxml="WebRoot/WEB-INF/web.xml" ) i% p# j z6 ~1 m6 @1 o- i" R
- update="true" ( q. `3 p8 Y* d2 A8 c
- basedir="WebRoot"/>& @: I1 T7 y T0 k2 W% V+ c
- <delete file="WebRoot/WEB-INF/lib/javaWeb-web.jar" />
- y/ d) D* h: m: D - </target>* ]- F8 _2 b8 ]( J
- 4 O9 a7 M+ S( u& ^, W5 Y
& H% A+ i( s) y* J- <target name="all" depends="prepare, jar-web, war">
% l/ Q5 c1 v Q' i8 m5 ^ - </target>
; O |- S/ r& G* q
1 L& t% P7 {* L7 |! H5 s7 |0 P- </project>7 L1 \7 x$ i2 m6 O
复制代码
?- m( m4 _/ B+ i
6 ?( b5 G9 H H; U: a/ o" p! y- H8 ^ |
|