提及Ant打包和发布ear

 

 提及Ant打包和发布ear。在本文中给出Ant打包和 发布ear 的详细  文件。 文件内容应该不难理解。 [本文给出的是 jboss 部署]。这和我的另一篇文章《 apache2.2 tomcat5.5 jboss4.2搭建 web集群+应用集群》是相对应的。
    
   说明:target
                prepare: 创建classes文件夹
                compile: 编绎
                copycf:  拷贝配置文件[这里是拷贝一些配置文件,比如spring 的配置文件、log4j配置文件、二级缓存配置文件、bean的映射文件,因为 compile: 编绎  时只编译 java 文件,其他文件是不管的。]
                ejbjar: 创建ejb jar包[注意配置 manifest Class-Path ]
                webwar: 创建WEB发布包[注意配置 manifest Class-Path ]
                ear:    创建EAR发布包[注意添加 第三方jar包]
              
  

    <project name="ear" default="deploy" basedir="..">

    <property environment="env" />
    <property name="app.dir" value="${basedir}" />
    <property name="src.dir" value="${app.dir}/JavaSource" />
    <property name="build.dir" value="${app.dir}/build" />
    <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="copycf" depends="compile" description="拷贝配置文件">
        <copy todir="${classes.dir}" >
            <fileset dir="${src.dir}">
              <include name="*.xml" />
              <include name="*.properties" />
              <exclude name="*.log" />
            </fileset>
        </copy>
      
        <copy todir="${classes.dir}/sezelee/cc/bean" >
            <fileset dir="${src.dir}/sezelee/cc/bean">
              <include name="*.xml" />
              <include name="*.properties" />
              <exclude name="*.log" />
            </fileset>
        </copy>
    </target>
  
  
    <target name="sessionInterface" depends="copycf" description="创建session bean接口包">
        <jar destfile="${app.dir}/interface.jar">
            <fileset dir="${classes.dir}">
                <include name="sezelee/cc/service/*.class" />
            </fileset>
        </jar>
    </target>

    <target name="ejbjar" depends="sessionInterface" description="创建ejb jar包">
        <jar destfile="${app.dir}/ejb.jar">
            <fileset dir="${classes.dir}">
                <include name="**" />
            </fileset>
            <manifest>
                <attribute name="Class-Path" value="mysql-connector-java-3.1.13-bin.jar commons-lang-2.3.jar jotm-core.jar jotm-client.jar ow2-connector-1.5-spec.jar xapool.jar spring.jar oscache-2.1.jar ehcache-1.2.3.jar"/>
            </manifest>
        </jar>
    </target>
  
    <target name="webwar" depends="ejbjar" 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="mysql-connector-java-3.1.13-bin.jar commons-lang-2.3.jar jotm-core.jar jotm-client.jar ow2-connector-1.5-spec.jar xapool.jar spring.jar oscache-2.1.jar ehcache-1.2.3.jar"/>
            </manifest>
        </war>
    </target>

    <target name="ear" depends="webwar" description="创建EAR发布包">
        <ear destfile="${app.dir}/ejbbbsseserver.ear" appxml="${build.dir}/META-INF/application.xml">
            <fileset dir="${app.dir}">
                <include name="ejb.jar"/>
                <include name="web.war"/>
            </fileset>
            <fileset dir="${webcontent.dir}/WEB-INF/lib" >
                <include name="mysql-connector-java-3.1.13-bin.jar" />
                <include name="commons-lang-2.3.jar" />
                <include name="jotm-core.jar" />
                <include name="jotm-client.jar" />
                <include name="ow2-connector-1.5-spec.jar" />
                <include name="xapool.jar" />
                <include name="spring.jar" />
                <include name="oscache-2.1.jar" />
                <include name="ehcache-1.2.3.jar" />
            </fileset>
        </ear>
    </target>
  
    <target name="deploy" depends="ear">
        <copy file="${app.dir}/ejbbbsseserver.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/ejbbbsseserver.ear" />      
    </target>

</project>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值