ant 部署war包到tomcat,weblogic服务器上

最近项目中尝试了一下ant打包部署。本文前提是你安装好JDK,设置好环境变量,和安装好ant。
Java代码   收藏代码
  1. <?xml version="1.0"?>   
  2. <project  name="test"   basedir="."   default="deploy">   
  3.   
  4.     <property  name="name" value= "test"/>  
  5.     <property  name="src" value="src"/>    
  6.     <property  name="lib" value="WebRoot/WEB-INF/lib"/>    
  7.     <property  name="webapp" value="WebRoot"/>   
  8.     <property  name="packages" value="com.*"/>    
  9.     <property  name="dist.dir" value="dist"/>  
  10.       
  11.     <property name="build.src" value="${dist.dir}/${name}/src"/>    
  12.     <property name="build.dest" value="${dist.dir}/${name}/WEB-INF/classes"/>    
  13.     <property name="buildwar.dest" value="${dist.dir}/${name}"/>    
  14.     <property name="build.javadocs" value="${dist.dir}/doc"/>  
  15.     <property name="jar.dest" value="${dist.dir}/jar"/>    
  16.     <property name="war.dest" value="${dist.dir}/war"/>   
  17.       
  18.     <property name="weblogic.home" value="D:\oracle\Middleware\wlserver10.3" />  
  19.     <property name="wls.username" value="weblogic" />  
  20.     <property name="wls.password" value="password_1" />  
  21.     <property name="wls.hostname" value="localhost" />  
  22.     <property name="wls.port" value="7001" />  
  23.     <property name="wls.server.name" value="AdminServer" />  
  24.       
  25.     <property name="warfile" value="${name}.war"/>  
  26.       
  27.     <property name="tomcat.home" value="D:\apache\apache-tomcat-6.0.36"/>    
  28.      <!--<property name="j2eelib.dir" value="D:\Genuitec\Common\plugins\com.genuitec.eclipse.j2eedt.core_8.5.0.me201003231033\data\libraryset\EE_5"/>-->    
  29.     <path id="classpath">    
  30.        <!--   
  31.         <fileset dir="${j2eelib.dir}">    
  32.             <include name="**/*.jar"/>    
  33.        </fileset>  -->  
  34.         <fileset dir="${lib}">    
  35.             <include name="**/*.jar"/>    
  36.         </fileset>    
  37.         <fileset dir="${weblogic.home}\server\lib">  
  38.             <include name="weblogic.jar" />  
  39.          </fileset>  
  40.     </path>  
  41.        
  42.     <target name="init" description="创建打包需要的路径,拷贝源文件到打包路径下">  
  43.         <mkdir dir="${dist.dir}"/>  
  44.         <mkdir dir="${build.src}"/>    
  45.         <mkdir dir="${build.dest}"/>    
  46.         <mkdir dir="${buildwar.dest}"/>    
  47.         <mkdir dir="${jar.dest}"/>    
  48.         <mkdir dir="${war.dest}"/>    
  49.         <copy todir="${build.src}" overwrite="true">    
  50.             <fileset dir="${src}" >  
  51.                 <exclude name="log4j.properties"/>  
  52.                 <exclude name="version.properties"/>  
  53.             </fileset>  
  54.         </copy>    
  55.         <copy todir="${buildwar.dest}" overwrite="true">    
  56.             <fileset dir="${webapp}">  
  57.                 <exclude name="**/log4j.properties"/>  
  58.                  <exclude name="**/version.properties"/>  
  59.             </fileset>  
  60.         </copy>  
  61.     </target>  
  62.     <taskdef name="wldeploy" classname="weblogic.ant.taskdefs.management.WLDeploy" classpathref="classpath" />  
  63.       
  64.     <target name="build" depends="init" description="编译 java 文件,拷贝 properties 属性配置文件到编译后的路径下">    
  65.         <javac srcdir="${build.src}" encoding="utf-8" destdir="${build.dest}">    
  66.             <classpath refid="classpath"/>    
  67.         </javac>    
  68.         <copy todir="${build.dest}">    
  69.             <fileset dir="${build.src}">    
  70.                 <include name="**/*.xml"/>   
  71.                 <include name="**/config.properties"/>   
  72.             </fileset>    
  73.         </copy>    
  74.     </target>   
  75.       
  76.     <target name="javadoc" depends="build" description="生成 java 的 API 帮助文档">    
  77.         <mkdir dir="${build.javadocs}"/>    
  78.         <javadoc packagenames="${packages}" encoding="utf-8" sourcepath="${build.src}" destdir="${build.javadocs}" author="true" version="true" use="true" splitindex="true" windowtitle="${name} API" doctitle="${name}">    
  79.             <classpath refid="classpath"/>    
  80.         </javadoc>    
  81.     </target>   
  82.   
  83.     <target name="buildwar" depends="javadoc" description="打 war 包,不将 java 文件打入包内">     
  84.         <delete dir="${build.src}"/>                    
  85.         <war warfile="${war.dest}/${warfile}" webxml="${buildwar.dest}/WEB-INF/web.xml">    
  86.             <lib dir="${buildwar.dest}/WEB-INF/lib"/>    
  87.             <classes dir="${build.dest}"/>    
  88.             <fileset dir="${buildwar.dest}" >  
  89.                  <include name="***.*" />  
  90.                 <include name="**/claim-servlet.xml" />  
  91.             </fileset>  
  92.         </war>  
  93.     </target>  
  94.       
  95.     <target name="clean" depends="init" description="清除打包用临时文件">    
  96.         <delete dir="${build.src}"/>    
  97.         <delete>    
  98.             <fileset dir="${build.dest}" includes="**/*.classes"/>    
  99.         </delete>    
  100.         <delete dir="${buildwar.dest}"/>    
  101.     </target>   
  102.           
  103.     <target name="deploywar" depends="buildwar,clean" description="发布 war 包至 tomcat 目录下">  
  104.           <copy todir="${tomcat.home}/webapps">    
  105.             <fileset dir="${war.dest}">    
  106.                 <include name="**/*.war"/>    
  107.             </fileset>    
  108.         </copy>    
  109.     </target>  
  110.       
  111.       
  112.       
  113.     <target name="deploy"  depends="buildwar,clean,undeploy">  
  114.        <wldeploy action="deploy" name="${name}" source="${war.dest}/${warfile}"   
  115.         targets="${wls.server.name}" user="${wls.username}" password="${wls.password}"  
  116.         adminurl="t3://${wls.hostname}:${wls.port}" debug="true" verbose="true" failοnerrοr="true" />  
  117.        <echo message="come here......" />  
  118.        <echo message="deploy success......." />  
  119.     </target>  
  120.       
  121.       
  122.     <target name="undeploy">  
  123.        <wldeploy action="undeploy" name="${name}" targets="${wls.server.name}" user="${wls.username}" password="${wls.password}" adminurl="t3://${wls.hostname}:${wls.port}" debug="false" verbose="false" failοnerrοr="false" />  
  124.     </target>  
  125.       
  126. </project>    


    这个文件包含了。。打包到tomcat和weblogic2种方式,deploywar是指发布到tomcat上,deploy是发布weblogic服务器上,weblogic部署需要一些参数,包括用户名密码端口之类,主要是name以weblogic和wls开头的property属性。里面有个j2eelib.dir。主要是设置myeclipse 里面java EE5环境的classpath。主要用于生成javadoc。。要注意,在编译和生成javadoc的时候要设置编码。
    如果大家也是myeclipse web项目,可以将这个build.xml放在项目的根目录下。和SRC平级。然后改下项目名称和tomcat或者weblogic的路径,就可以执行了。(其实,在项目组使用中,应该是将这些需要配置的属性放在一个properties文件中,而build.xml是公用的无需修改的,我自己尝试也就懒得搞了。)。可以直接在myeclipse中点击右键,run  as  Ant Build.如果已经安装ant,也可以直接在cmd控制台下进入到项目根目录,输入ant即可。

 

http://yuur369.iteye.com/blog/1744965

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值