ant打ear包简例

该博客详细介绍了如何使用Ant工具构建包含EJB和WAR的EAR包。首先配置了项目属性,然后通过多个目标(target)完成了源码编译、接口JAR、EJB JAR的创建。接着创建了WEB应用WAR包,并最终将所有组件打包成EAR。最后,部署到JBOSS服务器,并提供了清理目标以删除临时和部署文件。

<project name="ear" default="deploy" basedir=".">
   
<property environment="env" />
   
<property name="app.dir" value="${basedir}" />
   
<property name="src.dir" value="${app.dir}/src" />
   
<property name="classes.dir" value="${app.dir}/build/classes" />
   
<property name="webcontent.dir" value="${app.dir}/WebContent" />
   
<property name="jboss.home" value="${env.JBOSS_HOME}" />
   
<property name="jboss.server.config" value="default" />
   
<path id="build.classpath" description="编译时classpath">
       
<fileset dir="${webcontent.dir}/WEB-INF/lib">
           
<include name="*.jar" />
       
</fileset>
       
<pathelement location="${classes.dir}" />
   
</path>
   
<target name="prepare" depends="clean" description="创建classes文件夹">
       
<mkdir dir="${classes.dir}" />
   
</target>
   
<target name="compile" depends="prepare" description="编绎">
       
<javac srcdir="${src.dir}" destdir="${classes.dir}" debug="on" deprecation="on" optimize="off" includes="**">
           
<classpath refid="build.classpath" />
       
</javac>
   
</target>

<target name="sessionInterface" depends="compile" description="创建session bean接口包">
       
<jar destfile="${app.dir}/interface.jar">
           
<fileset dir="${classes.dir}">
               
<include name="com/mashiguang/ejb3/*.class" />
           
</fileset>
       
</jar>
   
</target>
   
<target name="ejb_jar" depends="sessionInterface" description="创建ejb jar包">
           
<jar destfile="${app.dir}/ejb.jar">
               
<fileset dir="${classes.dir}">
                   
<include name="com/mashiguang/ejb3/impl/**" />
               
</fileset>
               
<manifest>
                   
<attribute name="Class-Path" value="interface.jar commons-collections-3.2.jar commons-lang-2.3.jar"/>
               
</manifest>
           
</jar>
   
</target>

<target name="web-war" depends="ejb_jar" description="创建WEB发布包">
       
<war destfile="${app.dir}/web.war" webxml="${webcontent.dir}/WEB-INF/web.xml">
           
<fileset dir="${webcontent.dir}">
               
<include name="*.jsp"/>
               
<exclude name="WEB-INF/web.xml"/>
               
<exclude name="WEB-INF/lib/**"/>
           
</fileset>
           
<manifest>
               
<attribute name="Class-Path" value="interface.jar commons-collections-3.2.jar commons-lang-2.3.jar"/>
           
</manifest>
       
</war>
   
</target>
   
<target name="ear" depends="web-war" description="创建WEB发布包">
       
<ear destfile="${app.dir}/myproject.ear" appxml="${src.dir}/META-INF/application.xml">
           
<fileset dir="${app.dir}">
               
<include name="ejb.jar"/>
               
<include name="web.war"/>
               
<include name="interface.jar"/>
           
</fileset>
           
<fileset dir="${webcontent.dir}/WEB-INF/lib" >
               
<include name="commons*.jar"/>
           
</fileset>
       
</ear>
   
</target>

<target name="deploy" depends="ear">
       
<copy file="${app.dir}/myproject.ear" todir="${jboss.home}/server/${jboss.server.config}/deploy" />
   
</target>
   
<target name="clean">
       
<delete>
           
<fileset dir="${app.dir}">
               
<include name="ejb.jar"/>
               
<include name="web.war"/>
               
<include name="interface.jar"/>
           
</fileset>
       
</delete>
       
<delete dir="${classes.dir}" />
       
<!-- -->
       
<delete file="${jboss.home}/server/${jboss.server.config}/deploy/myproject.ear" />

</target>
</project>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值