随笔 - 0, 文章 - 75, 评论 - 0, 引用 - 0
数据加载中……

通过ANT提高EJB应用的开发效率

在企业开发中,需要不断的测试EJB,需要反复的打包和发布
如果通过Eclipse打包
和才用手工复制的方法发布,会降低项目的开发效率
为了提高效率,大部分企业会在项目中引入ANT
通过ANT完成对应用的编译 打包 发布 和 解发布



Eclipse集成了ANT,右键项目,new XML File文件


起名为:build.xml (小蚂蚁图标)


通过ANT提高EJB应用的开发效率
通过ANT提高EJB应用的开发效率
通过ANT提高EJB应用的开发效率
通过ANT提高EJB应用的开发效率
通过ANT提高EJB应用的开发效率

以下是代码:


--------------------------------------------------------------------


<?xml version="1.0" encoding="UTF-8"?>


<!-- name为项目名称,basedir指定项目所在路径和build.xml文件同级 -->
<project
name="HelloWorld" basedir=".">


<!--
定义属性变量src.dir
用于指定项目的源文件所在的目录
value中${basedir}是引用的project标签中的basedir(项目所在路径)

通过src.dir变量,就可以引用到了 项目的\src目录了
-->
<property
name="src.dir" value="${basedir}\src"
/>

<!--
定义一个变量,指向到系统环境变量
因为要从系统变量中得到这些变量的值
-->
<property
environment="env" />

<!-- 定义变量,它的值为
系统环境变量中JBOSS_HOME的值(jboss安装目录) -->
<property name="jboss.home"
value="${env.JBOSS_HOME}" />

<!-- 指定目前用于jboss的配置项
-->
<property name="jboss.server.config" value="default"
/>

<!-- 用于编译源文件后这些class类它所存放的目录
-->
<property name="build.dir"
value="${basedir}\build"/>

<!-- 配置了类路径 名称叫
build.classpath-->
<!-- 在这个类目录底下,包含了client目录下的所有jar文件
-->
<path
id="build.classpath">

<!--
在开发EJB应用时,需要一些jar文件
这些jar文件,是在安装jboss的client目录下
定位到了jboss下的client目录
<在这个类目录底下,包含了client目录下的所有jar文件
-->
<fileset
dir="${jboss.home}\client">

<!--
把所有jar文件都包含进来 -->
<include name="*.jar"
/>
</fileset>

<!--
把编译后的class文件也作为类路径的一部分 -->
<pathelement
location="${build.dir}" />
</path>

<!--
定义一个工作 叫 prepare 可随意设置 -->
<target
name="prepare">

<!-- 如果原来有这个目录,就删掉
-->
<delete dir="${build.dir}"
/>

<!-- 用于创建build.dir目录(项目下build目录)
-->
<mkdir dir="${build.dir}"
/>
</target>

<!-- 编译工作
-->
<!-- 确保编译前,${build.dir}文件夹存在,所以依赖前面的工作,用depends
-->
<target name="compile" depends="prepare"
description="编译">

<!-- 编译目录 ${src.dir}
目标的class文件放到${build.dir} -->
<javac srcdir="${src.dir}"
destdir="${build.dir}">

<!--
在编译时,用到了前面定义的类路径下的jar文件
引用id
把前面设置的jar文件所在的类路径
-->
<classpath
refid="build.classpath"
/>
</javac>
</target>

<!--
定义打包任务 -->
<target name="ejbjar" depends="compile"
description="创建EJB发布包">

<!--
对类文件进行打包
打包后在项目底下\项目名称 .jar
(HelloWorld.jar)
打包之前先需要编译,所以depends
compile
-->
<jar
jarfile="${basedir}\${ant.project.name}.jar">

<!--
HelloWorld.jar下面包含的jar包
定位到${build.dir}
class文件所存放的目录
-->
<fileset
dir="${build.dir}">


<!-- 把它下面的所有class文件都包含进来 -->
<include
name="**/*.class"
/>
</fileset>
</jar>
</target>

<!--
打包工作,依赖ejbjar -->
<target name="deploy" depends="ejbjar"
description="发布ejb">

<!--
把项目下的jar文件,copy到jboss\server\default\deploy下 -->
<copy
file="${basedir}\${ant.project.name}.jar"
todir="${jboss.home}\server\${jboss.server.config}\deploy"
/>
</target>

<!-- 卸载ejb
-->
<target name="undeploy"
description="卸载ejb">

<!--
直接把项目.jar包从jboss发布目录下删除即可
-->
<delete
file="${jboss.home}\server\${jboss.server.config}\deploy\${ant.project.name}.jar"
/>
</target>

</project>

--------------------------------------------------------------------------


保存之后,打开Outline 大纲视图:
通过ANT提高EJB应用的开发效率
以后修改了程序,部署时,直接运行deploy即可(右键,Run As --> Ant
Build
)提高企业开发效率


控制台输出:


通过ANT提高EJB应用的开发效率


-----------------------------------------------------------


卸载EJB,则执行undeploy
通过ANT提高EJB应用的开发效率

注意,一定要先开启jboss哦!

posted on 2012-04-22 16:10 hantai 阅读(62) 评论(0)  编辑  收藏


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


网站导航: