频 道 直 达 - 新闻 - 培训 - 软件 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 读书 - 博客 - BBS
51CTO.COM_中国最大的网络技术网站
找资料:

9.2.1 build.xml

作者: 梁立新编著 出处:电子工业出版社  2008-06-24 09:08    砖    好    评论   进入论坛
阅读提示:《项目实践精解:基于Struts-Spring-Hibernate的Java应用开发》第9章主要讲述的是Ant工具的使用,Ant是著名Java开源组织Apache的一个项目,是一个基于Java的批处理工具,本节为您介绍build.xml。

9.2  项目中Ant的使用

9.2.1  build.xml

<?xml version="1.0"?>
<project name="Acesys" default="deploy-db">

<!-- properies -->
<property file="build.properties" />
<property name="src.dir" value="${basedir}/src" />
<property name="report.dir" value="${basedir}/report" />
<property name="lib.dir" value="${basedir}/lib" />
<property name="dist.dir" value="${basedir}/dist" />
<property name="doc.dir" value="${basedir}/doc" />
<property name="test.dir" value="${basedir}/test" />
<property name="target.dir" value="${basedir}/target" />
<property name="classes.dir" value="WebRoot/WEB-INF/classes" />
<property name="target.classes.dir" value="${target.dir}/classes" />
<property name="target.testclasses.dir" value="${target.dir}/test-classes" />
<property name="webroot.dir" value="${basedir}/WebRoot" />
<property name="db.dir" value="${basedir}/db" />
<!-- 定义classpath -->
<path id="master-classpath">
<fileset file="WebRoot/WEB-INF/lib/*.jar" />
<pathelement path="${webroot.dir}/WEB-INF/classes" />
</path>

<!--清除所有输出目录-->
<target name="clean" description="清空所有输出目录">
<echo message="清空所有输出目录"/>
<delete dir="${target.classes.dir}" />
<delete dir="${target.testclasses.dir}" />
<delete dir="${target.dir}" />
<delete dir="${dist.dir}" />
<delete dir="${doc.dir}" />
</target>
<!-- 初始化任务 -->
<target name="init" depends="clean">
</target>

<!-- 编译 -->
<target name="compile" depends="init" description="编译所有的java类">
<echo message="编译所有的java类"/>
<mkdir dir="${target.classes.dir}" />
<javac srcdir="${src.dir}" destdir="${target.classes.dir}" target= "1.5">
<classpath refid="master-classpath" />
</javac>
</target>

<!-- 测试   -->
<target name="test" depends="compile" description="进行单元测试">
<mkdir dir="${report.dir}"/>
<junit printsummary="on"
haltonfailure="false"
failureproperty="tests.failed"
showoutput="true">
<classpath refid="master-classpath" />
<formatter type="plain"/>
<batchtest todir="${report.dir}">
<fileset dir="${classes.dir}">
<include name="**/*Test.*"/>
</fileset>
</batchtest>
</junit>
<fail if="tests.failed">
***********************************************************
****       存在一个或多个错误 ,请检查错误  ......           ****
***********************************************************
</fail>
</target>


<!--打包成jar -->
<target name="pack" depends="compile" description="打jar包">
<echo message="生成ascent-acesys.jar"/>
<mkdir dir="${dist.dir}" />
<jar destfile="${dist.dir}/ascent-acesys.jar" basedir="${classes. dir}">
<exclude name="**/*Test.*" />
<exclude name="**/Test*.*" />
</jar>
</target>

<!-- Web应用打成war包 -->
<target name="war" depends="pack" description="打war包">
<echo message="生成acesys.war"/>
<mkdir dir="${dist.dir}" />
<jar destfile="${dist.dir}/acesys.war" basedir="${webroot.dir}">
<exclude name="**/*Test.*" />
<exclude name="**/Test*.*" />
</jar>
</target>

<!-- 部署到tomcat webapps目录下-->
<target name="deploy-war" depends="war" description="部署到tomcat webapps目录下">
<echo message="部署acesys.war到tomcat的webapps下"/>
<copy  todir="${tomcat.dir}/webapps" overwrite="true" >
<fileset dir="${dist.dir}">
<include name="acesys.war"/>
</fileset>
</copy>
</target>

<!-- 部署mysql数据库文件 -->
<target name="deploy-db" depends="deploy-war" description="初始化mysql数据库">
<echo message="部署数据库文件到mysql的data目录下"/>
<copy todir="${mysql.dir}/data" overwrite="ture">
<fileset dir="${db.dir}">
<include name="**/*.*" />
</fileset>
</copy>
</target>
<!-- 输出api文档 -->
<target name="doc" depends="compile" description="创建api文档">
<mkdir dir="${doc.dir}" />
<javadoc destdir="${doc.dir}" author="true" version="true" use= "true" windowtitle="AscentWeb API">
<packageset dir="${src.dir}" defaultexcludes="yes">
<include name="com/ascent/**" />
</packageset>
<doctitle>
<![CDATA[<h1>AscentWeb电子商务系统(Spring2.0+Hibernate3.1+Struts2.0)</h1>]]></doctitle>
<bottom>
<![CDATA[<i>Ascent Technologies,Inc,All Rights Reserved.</i>]]> </bottom>
<tag name="todo" scope="all" description="To do:" />
</javadoc>
</target>
</project>

【责任编辑:夏书 TEL:(010)68476606】

回书目   上一节   下一节
专题
初探敏捷开发
VMware技术应用
WCF开发基础
VPN安全技术与应用
系统应用日志分析管理
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 最 大 的 网 络 技 术 网 站 ·
技 术 成 就 梦 想
订阅技术快讯
电子杂志下载
名称:SQL Server数据库管理精品黄皮书
简介:书中文章经过精挑细选,便于用户能根据自己的实际工作和学习,快速在本书寻找到相关资料。内容涵盖了SQL Server的安装与升级、语句查询、数据备份和恢复、自动化任务、数据同步、数据字典、安全和预防、性能和优化、集群等各方面应用信息,以及DBA管理人员在数据库管理工作中
名称:2007路由技术大全
简介:《2007路由技术大全》由51CTO.com网站特别策划制作,该书包括路由器技术、路由器产品、路由器配置、安全设置、路由器故障处理、路由器密码恢复,以及广大网友在实践使用中的心得经验和技巧文章,内容注重实用性,适用于初学者入门,也适合多年从业者提高,是一本实践和理论完
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
LAMP技术精解
LAMP技术精解
世纪枭雄比尔盖茨的王者传奇
世纪枭雄比尔盖茨的王者传奇
服务器节能与绿色IT
服务器节能与绿色IT
· 服务器节能与绿色IT
· ARP攻击防范与解决方案
· Linux 集群技术专题
· Windows集群服务应用
· CISSP认证成长之路
· SQL Server 2008/2005..
· SQL Server入门到精通
· 网络工程师职业规划与..
· 浏览器的战国时代
· 运营商封堵ADSL共享 中..
· 微软出价446亿美元收购..
· 技术人求职简历完备手册
· 开源虚拟化技术Xen
· Windows Server 2008专..
· 隐私保护技术探讨
· 绿色IT人健康生存手册
ARP攻击防范与解决方案
ARP攻击防范与解决方案
SQL Server 2008/2005全解
SQL Server 2008/2005全解
SOA 面向服务架构
SOA 面向服务架构
· SOA 面向服务架构
· SQL Server 2008/2005..
· Apache技术专题
· 三层交换技术专题
· SQL Server入门到精通
· Apache技术专题
· Windows集群服务应用
· 国际文档格式标准开战
· 路由器设置与口令恢复
· Linux 集群技术专题
· PHP开发应用手册
· SOA 面向服务架构
· 企业数据恢复指南
· 了解统一威胁管理(UTM)..
· 专题:AIX操作系统管理..
· 访问控制列表(ACL)介绍
ARP攻击防范与解决方案
ARP攻击防范与解决方案
SQL Server 2008/2005全解
SQL Server 2008/2005全解
SQL Server入门到精通
SQL Server入门到精通
· SQL Server入门到精通
· SQL Server 2008/2005..
· SOA 面向服务架构
· Apache技术专题
· 三层交换技术专题
· Apache技术专题
· 企业数据恢复指南
· Windows集群服务应用
· 路由器设置与口令恢复
· Linux 集群技术专题
· SOA 面向服务架构
· 了解统一威胁管理(UTM)..
· 反垃圾邮件技术应用
· 访问控制列表(ACL)介绍
· PHP开发应用手册
· 专题:AIX操作系统管理..