ant针对ear的自动构建和发布到weblogic9

项目成员认为发布应用到weblogic比较麻烦,于是写一个ant脚本帮助自动发布到测试环境。全文如下:

build.properties的内容:

 

temp.folder=E://tools//cruisecontrol-bin-2.8.2//target

deploy.ear=E://deploy//cluster//uuim.ear

j2ee.lib=E://Tomcat//common//lib/

weblogic.lib=C://bea/weblogic92//server//lib

username=weblogic

password=weblogic

application.name=uuim

adminurl=t3://192.168.1.189:8001

target=ManagedServer2

这里定义了构建文件使用的基本变量。

构建文件build.xml的内容:

[xhtml]  view plain copy
  1. <project name="uuim" default="packageForTest" basedir=".">  
  2.     <property file="build.properties" />  
  3.     <property name="appName" value="${application.name}" />  
  4.     <property name="classesPath" value="WebContent/WEB-INF/classes" />  
  5.     <!-- 初始化weblogic发布任务 -->  
  6.     <target name="init">  
  7.         <path id="project.class.path">  
  8.             <pathelement path="${java.class.path}/" />  
  9.             <pathelement path="${weblogic.lib}/weblogic.jar" />  
  10.         </path>  
  11.         <echo message="${java.class.path}" />  
  12.         <taskdef name="wldeploy" classname="weblogic.ant.taskdefs.management.WLDeploy">  
  13.             <classpath refid="project.class.path" />  
  14.         </taskdef>  
  15.     </target>  
  16.     <!-- 发布 -->  
  17.     <target name="deploye-to-weblogic" depends="packageForLocalTest,init">  
  18.      <wldeploy action="undeploy"  verbose="true" debug="true" name="${appName}" user="${username}" password="${password}" adminurl="${adminurl}" targets="${target}" />     
  19.      <wldeploy action="activate" source="${deploy.ear}" verbose="true" debug="true" name="${appName}" user="${username}" password="${password}" adminurl="${adminurl}" targets="${target}" />  
  20.     </target>  
  21.     <!-- 打包 -->  
  22.     <target name="packageForLocalTest" depends="compile">  
  23.         <copy file="${classesPath}/config_189.properties" tofile="${classesPath}/config.properties" overwrite="true" />  
  24.         <copy todir="${temp.folder}/${appName}.ear/${appName}.war/">  
  25.            <fileset dir="WebContent">  
  26.               <exclude name="*.svn/**" />  
  27.           </fileset>  
  28.        </copy>  
  29.         <zip destfile="${deploy.ear}" basedir="${temp.folder}/${appName}.ear" excludes="*.svn/**" />  
  30.     </target>  
  31.     <!-- 从svn更新代码到本地 -->  
  32.     <target name="svnup">  
  33.         <exec executable="svn">  
  34.             <arg line="up" />  
  35.         </exec>  
  36.     </target>  
  37.     <!-- 清除以前构建的文件 -->  
  38.     <target name="clean">  
  39.         <delete includeEmptyDirs="true">  
  40.             <fileset dir="${classesPath}" includes="**/*"/>  
  41.             <fileset dir="${temp.folder}/${appName}.ear/${appName}.war/" includes="**/*"/>  
  42.         </delete>  
  43.     </target>  
  44.     <!-- 设置编译classpath -->  
  45.     <path id="lib">  
  46.         <fileset dir="WebContent/WEB-INF/lib/">  
  47.             <include name="**/*.jar" />  
  48.         </fileset>  
  49.         <fileset dir="${j2ee.lib}">  
  50.             <include name="**/*.jar" />  
  51.         </fileset>  
  52.     </path>  
  53.     <!-- 编译 -->  
  54.     <target name="compile" depends="svnup,resource">  
  55.         <javac srcdir="src" destdir="WebContent/WEB-INF/classes" encoding="UTF-8" classpathref="lib" />  
  56.     </target>  
  57.     <!-- 拷贝资源文件 -->  
  58.     <target name="resource" >  
  59.         <copy todir="WebContent/WEB-INF/classes">  
  60.             <fileset dir="src">  
  61.                 <include name="**/*.jpe" />  
  62.                 <include name="**/*.jpeg" />  
  63.                 <include name="**/*.rmf" />  
  64.                 <include name="**/*.wav" />  
  65.                 <include name="**/*.mid" />  
  66.                 <include name="**/*.midi" />  
  67.                 <include name="**/*.au" />  
  68.                 <include name="**/*.gif" />  
  69.                 <include name="**/*.png" />  
  70.                 <include name="**/*.jpg" />  
  71.                 <include name="**/*.aiff" />  
  72.                 <include name="**/*.properties" />  
  73.                 <include name="**/*.xml" />  
  74.                 <include name="**/*.swf" />  
  75.             </fileset>  
  76.         </copy>  
  77.     </target>    
  78. </project>  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值