[原创]批量处理工具ANT的使用小结_Android, Python及开发编程讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Android, Python及开发编程讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 3638 | 回复: 0   主题: [原创]批量处理工具ANT的使用小结        下一篇 
鲲鹏展翅
注册用户
等级:少校
经验:1148
发帖:79
精华:9
注册:2012-11-19
状态:离线
发送短消息息给鲲鹏展翅 加好友    发送短消息息给鲲鹏展翅 发消息
发表于: IP:您无权察看 2012-11-23 9:24:14 | [全部帖] [楼主帖] 楼主

1. 原理

(1). 运行时选择的顺序决定了执行的顺序

(2). ant适用于批量处理的,一般由框架师来做

(3).在dos窗口下运行ant命令的话,所创建的ant文件名称必须为build.xml,但是在web项目里边可以随便命名

2.实例一,使用ant文件来部署eclipse创建的web项目到tomcat中去

<?xml version="1.0" encoding="UTF-8"?>
<!--该文档的作用是利用ant文件来部署eclipse创建的web项目到tomcat中去,注意:在MYEclipse中部署时非常方便,
一点部署按钮就OK了,直接就发布到tomcat中的D:\apache-tomcat-6.0.35\webapps
但是在eclipse中发布的文件在该目录下E:\eclipse3.7\.metadata\.plugins\org.eclipse.wst.server.core\tmp4\wtpwebapps\book
即eclipse的工作空间中。为了也能发布到tomcat,所以就使用ant来copy进行部署。ant一般是框架式使用的-->
<!--定义工程copy,初始化根目录,默认执行的功能-->
<project name="book" basedir="." default="usage">
<!--定义所需要的属性值-->
<property name="tomcat" value="D:/apache-tomcat-6.0.35/webapps"></property><!--tomcat根目录-->
<!--默认执行的功能模块-->
<target name="usage" description="默认功能模块">
<echo>说明及用法信息!</echo>
</target>
<!--copy文件的的功能模块-->
<target name="create" description="部署eclipse创建的web项目到tomcat中" depends="mdir">
<!--开始部署-->
<!--把WebContent下的所有文件都考到book中-->
<copy todir="{tomcat}/{ant.project.name}">
<!--以下指定copy那些文件-->
<fileset dir="{basedir}/WebContent">
<!--**/*.*是指copy无论文件目录有多深都会copy-->
<include name="**/*.*"/>

</fileset>

</copy>
<!--部署成功-->
</target>
<target name="mdir">
<!--先创建项目该目录book-->
<mkdir dir="{tomcat}/{ant.project.name}"/>
</target>
</project>


3.实例二,利用ant来对数据库进行批量处理 <?xml version="1.0" encoding="UTF-8"?>

<!--定义工程book,初始化根目录,默认执行的功能-->
<project name="book" basedir="." default="usage">
<!--初始化连接数据库所需要的各种参数,url,driver,user,pwd-->
<property name="url" value="jdbc:mysql://127.0.0.1:3309/mysql?useUnicode=true&characterEncoding=UTF-8"></property>
<property name="driver" value="com.mysql.jdbc.Driver"></property>
<property name="user" value="root"></property>
<property name="pwd" value="root"></property>
<!--默认执行的功能模块-->
<target name="usage">
<echo>说明及用法信息!</echo>
</target>
<!--创建数据库和关系表的功能模块-->
<target name="create" description="创建数据库和关系表">
<!--连接数据库服务器-->
<sql userid="{user}" password="{pwd}" url="{url}" driver="{driver}" encoding="UTF-8" delimiter=";">
<!--执行设定目录下的sql文件-->
<fileset dir="{basedir}/bookstore/create">
<include name="*.sql" />
</fileset>
<!--加载连接数据库的驱动-->
<classpath>
<!--由于ant是另一个工程,所以它不会默认从lib文件夹下读取驱动,所以要设置目录到lib下-->
<fileset dir="{basedir}/WebContent/WEB-INF/lib">
<include name="*.jar" />
</fileset>
</classpath>
</sql>
</target>
<!--初始化数据库和关系表的功能模块-->
<target name="init" description="初始化数据库和关系表">
<sql userid="{user}" password="{pwd}" url="{url}" driver="{driver}" encoding="UTF-8" delimiter=";">
<fileset dir="{basedir}/bookstore/init">
<include name="*.sql" />
</fileset>
<classpath>
<fileset dir="{basedir}/WebContent/WEB-INF/lib">
<include name="*.jar" />
</fileset>
</classpath>
</sql>
</target>
<!--删除数据库的功能模块-->
<target name="drop" description="删除数据库">
<sql userid="{user}" password="{pwd}" url="{url}" driver="{driver}" encoding="UTF-8" delimiter=";">
<fileset dir="{basedir}/bookstore/drop">
<include name="*.sql" />
</fileset>
<classpath>
<fileset dir="{basedir}/WebContent/WEB-INF/lib">
<include name="*.jar" />
</fileset>
</classpath>
</sql>
</target>
</project>


4.实例四,Ant核心任务之jar

 <?xml version="1.0" encoding="UTF-8"?>
<!--利用ant来对web项目进行打包操作-->
<project name="book" basedir="." default="jar">
<!--实例一,将做好的web项目打包到指定的位置保存起来-->
<target name="jar" description="将做好的web项目打包到指定的位置">
<jar destfile="E:/book.jar" basedir="{basedir}"></jar>
</target>
<!--实例二,有选择的进行打包-->
<target name="jarpart" description="有选择的进行打包">
<!--将book下的所有文件打包,但是除了*.xml下的所有源文件-->
<jar destfile="E:/book.jar" basedir="{basedir}" excludes="*.xml" ></jar>
</target>
<!--实例三,manifest属性指定自己的META-INF/MANIFEST.MF文件,而不是由系统生成-->
<target name="jarmf" description="指定自己的META-INF/MANIFEST.MF文件">
<!--将book下的所有文件打包,但是除了*.xml下的所有源文件-->
<jar destfile="E:/book.jar" basedir="{basedir}" excludes="*.xml" manifest="{basedir}/WebContent/META-INF/book.mf" ></jar>
</target>
</project>


该贴被鲲鹏展翅编辑于2012-11-23 9:25:18




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论