ammayjxf

 

ant 的使用说明

2009-04-10

ant 的使用说明

关键字: ant 的使用说明
>>>>>>>>>>>声明
1.目的是学习,备忘,共享。个人表达能力有限,看不懂,表达错误的,见谅
>>>>>>>>>>>ant是什么
1.专业一点说是构建工具,是协助开发人员管理工程的工具
2.通俗一点说是懒人工具,帮助我们做一些重复的劳动
3.举个例子:发布一个web工程,你会如何做
a.将web工程打包
b.停止web工程
c.上传web工程
d.重启web工程
 通常,你可能会用IDE打包,然后登陆到服务器,把WEB工程shutdown,再用上传工具传war包,然后再重启
 有了ant,你不用这么累了,运行一个build.xml就OK。

>>>>>>>>>>ant的特点
1.跨平台,因为用JAVA写的
2.功能强大(这是一个口号),扩展性比较好(这倒是实话,但代价是你得找支持的jar包)
3.上手容易,因为语法简单

>>>>>>>>>>ant的应用,eclipse下
1.传说牛人都不用IDE,我用eclipse,这玩意儿还是免费的,真棒。
2.exlipse3.0以后应该都内嵌ant,找找看:$eclipse\plugins\org.apache.ant_1.6.5

3.新建工程,工程根目录下新建build.xml
4.试试好不用,运行一下
Java代码 复制代码
  1. <?xml version="1.0" encoding="UTF-8"?>   
  2. <project name="WebTest" basedir="E:\work_ccats2\WebTest" default="main">   
  3. <target name="main" depends="test" description="Main target">   
  4. </target>   
  5. <target name="test" description="test">   
  6.     <echo> task start </echo>   
  7. </target>   
  8. </project>  


5.ftp功能:
a.下载commons-net-1.4.0.jar jakarta-oro-2.0.8.jar NetComponents.jar optional.jar
b.上面这些jar,如果你的ant或jdk版本高,有的没有,但如果不是,劝你都下
c.eclipse下: Window->Preferance->Ant->Runtime->Ant Home Entries->自己加上jar

6.ssh:
a.下载jsch-0.1.41.jar
b.后面同[5]

7.给一个build.xml样例
Java代码 复制代码
  1. <?xml version="1.0" encoding="UTF-8"?>   
  2. <project name="WebTest" basedir="E:\work_ccats2\WebTest" default="main">   
  3.     <target name="main" depends="taskover" description="Main target">   
  4.     </target>   
  5.        
  6.     <!-- ***************************变量定义开始************************* -->   
  7.     <!--工程名称-->   
  8.     <property name="project.name" value="WebTest"/>   
  9.     <!--打包war文件存放的位置-->   
  10.     <property name="war.dir" location="E:\war"/>   
  11.     <!--服务器IP-->   
  12.     <property name="hostIP" value="10.4.116.212" />   
  13.     <!--服务器OS帐户-->   
  14.     <property name="userID" value="esb" />   
  15.     <!--服务器OS密码-->   
  16.     <property name="password" value="esb" />   
  17.     <!--服务器tomcat路径-->   
  18.     <property name="hostHome" value="/home/esb" />   
  19.     <!-- *************************变量定义结束************************* -->   
  20.        
  21.     <!-- 测试 -->   
  22.     <target name="test" description="test">   
  23.         <echo> task start </echo>   
  24.     </target>   
  25.     <!-- 打包war文件 -->   
  26.     <target name="pgWar" depends="test" description="Package application as a war">   
  27.         <mkdir dir="${war.dir}" />   
  28.         <war destfile="${war.dir}/${project.name}.war" webxml="web.xml">   
  29.             <fileset dir="${basedir}">   
  30.             </fileset>   
  31.         </war>   
  32.     </target>   
  33.        
  34.        
  35.     <target name="remote-tomcat-stop" depends="pgWar" >   
  36.             <sshexec host="${hostIP}" username="${userID}"  password="${password}"    
  37.                 command="ps -ef|grep tomcat55|grep -v grep |awk '{print $2}'|xargs -n1 kill -9;ls;rm -rf /home/esb/tomcat55/webapps/WebTest*"    
  38.                 trust="true" />   
  39.             <sleep seconds="5"/>   
  40.     </target>   
  41.        
  42.     <!-- 上传文件-->   
  43.     <target name="uploadFile" depends="remote-tomcat-stop" >   
  44.         <ftp server="${hostIP}" remotedir="${hostHome}/tomcat55/webapps" userid="${userID}"    
  45.             password="${password}" depends="yes" >   
  46.             <fileset dir="${war.dir}">   
  47.                 <include name="**/*.war"/>   
  48.             </fileset>   
  49.         </ftp>   
  50.     </target>   
  51.        
  52.     <!-- 远程重启tomcat-->   
  53.         <target name="remote-tomcat-start" depends="uploadFile" >   
  54.             <sshexec host="${hostIP}" username="${userID}"  password="${password}"    
  55.                 command="cd /home/esb/tomcat55/bin;JAVA_HOME=/home/esb/jdk1.5/jdk1.5.0_06 export JAVA_HOME;nohup sh startup.sh;ls"    
  56.                 trust="true" />   
  57.             <sleep seconds="5"/>   
  58.         </target>   
  59.            
  60.         <target name="taskover" depends="remote-tomcat-start" >   
  61.             <echo> task over </echo>   
  62.         </target>   
  63.        
  64. </project>  


>>>>>>>>>>>>>命令行下的ant应用
1.环境变量设一下
ANT_HOME= $ant路径
PATH = %ANT_HOME%;%ANT_HOME%\bin

2.测试
输入ant,看有反应没

posted on 2009-11-19 21:09 ammay 阅读(593) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航:
 

导航

统计

常用链接

留言簿

随笔档案

文章分类

文章档案

搜索

最新评论

阅读排行榜

评论排行榜