`
xiaobian
  • 浏览: 588066 次
  • 来自: 北京
社区版块
存档分类
最新评论

ANT 打 war包,jar包

    博客分类:
  • Java
阅读更多

http://hi.baidu.com/dancemachine/blog/item/e949520e74f096c87bcbe115.html

http://blog.csdn.net/ln831015/archive/2007/08/13/1740869.aspx

 

转)用Ant打war包Build.xml全攻略

2007年07月05日 星期四 上午 09:52

<project basedir="." default="usage" name="myceaas">

<target name="init">


   <property name="Name" value="myceaas" />
   <property name="name" value="myceaas" />
   <property name="version" value="0.2" />
   <property name="year" value="2006" />


   <echo message="----------- ${Name} ${version} [${year}] ------------" />


   <property name="debug" value="off" />
   <property name="optimize" value="on" />
   <property name="deprecation" value="on" />


   <!--<property name="mycedatasycn.location" value="D:/project/myce/mycedatasycn" />-->


<!--    java源文件路径 -->

   <property name="src.dir" value="${basedir}/src" />


<!--    jar包路径 -->
   <property name="lib.dir" value="${basedir}/myceaas/WEB-INF/lib" />


<!--    webapp路径 -->
   <property name="webapp.dir" value="${basedir}/myceaas" />
   <property name="packages" value="com.ce.myceaas.*" />


<!--    准备源文件路径 -->
   <property name="build.src" value="${basedir}/AntBuild/build" />


<!--    编译源文件路径 -->
   <property name="build.dest" value="${basedir}/AntBuild/bin" />


<!--    准备webapp文件路径 -->
   <property name="buildwar.dest" value="${basedir}/AntBuild/warsrc" />


<!--    准备javadoc文件路径 -->
   <property name="build.javadocs" value="${basedir}/AntBuild/doc" />


<!--    打包jar文件路径 -->
   <property name="jar.dest" value="${basedir}/AntBuild/jar" />


<!--    打包war文件路径 -->
   <property name="war.dest" value="${basedir}/AntBuild/war" />
  
   <!--    resin-home路径 -->
   <property name="resin.home" value="C:\resin-pro-3.0.17"/>


<!--    tomcat-home路径 -->
   <property name="tomcat.home" value="C:\tomcat5.5.12"/>
   <property name="j2eelib.dir" value="C:/Program Files/MyEclipse/eclipse/plugins/com.genuitec.eclipse.j2eedt.core_3.9.210/data/libraryset/1.4" />


<!--    classpath -->
   <path id="classpath">
   
    <fileset dir="${j2eelib.dir}">
     <include name="**/*.jar"/>
    </fileset>
    <fileset dir="${lib.dir}">
     <include name="**/*.jar"/>
    </fileset>
    <!--<pathelement location="lib/"/>-->
   </path>


   <filter token="year" value="${year}" />
   <filter token="version" value="${version}" />
   <filter token="date" value="${TODAY}" />
   <filter token="log" value="true" />
   <filter token="verbose" value="true" />


</target>


   <!-- =================================================================== -->
<!-- Help on usage -->
<!-- =================================================================== -->
<target name="usage" depends="init">
   <echo message="${Name} Build file" />
   <echo message="-------------------------------------------------------------" />
   <echo message="" />
   <echo message=" available targets are:" />
   <echo message="" />
   <echo message=" jar --> generates the ${name}.jar file" />
   <echo message=" build --> compiles the source code" />
   <echo message=" javadoc --> generates the API documentation" />
   <echo message=" clean --> cleans up the directory" />
   <echo message="" />
   <echo message=" Please rename build.properties.default to build.properties" />
   <echo message=" and edit build.properties to specify JSDK 2.3 classpath." />
   <echo message="" />
   <echo message=" See the comments inside the build.xml file for more details." />
   <echo message="-------------------------------------------------------------" />
   <echo message="" />
   <echo message="" />
</target>


<!-- =================================================================== -->
<!-- 准备源文件-->
<!-- =================================================================== -->
<target name="prepare-src" depends="init">
   <!-- create directories -->
   <mkdir dir="${build.src}" />
   <mkdir dir="${build.dest}" />
   <mkdir dir="${jar.dest}" />
   <mkdir dir="${war.dest}" />
   <mkdir dir="${buildwar.dest}" />
  
  
   <!-- copy src files -->
   <copy todir="${build.src}">
    <fileset dir="${src.dir}" />
   </copy>
   <copy todir="${buildwar.dest}">
    <fileset dir="${webapp.dir}" />
   </copy>

</target>


<!-- =================================================================== -->
<!-- 编译源文件-->
<!-- =================================================================== -->
<target name="build" depends="prepare-src">
   <javac srcdir="${build.src}" destdir="${buildwar.dest}/WEB-INF/classes" debug="${debug}" optimize="${optimize}">
    <classpath refid="classpath" />
   </javac>
   <copy todir="${buildwar.dest}/WEB-INF/classes">
    <fileset dir="${build.src}" >
     <include name="**/*.xml"/>
    </fileset>
   </copy>
</target>


<!-- =================================================================== -->
<!-- 打war包-->
<!-- =================================================================== -->

<target name="myceaas.war" depends="build">
   <war warfile="${war.dest}/myceaas.war" webxml="${buildwar.dest}/WEB-INF/web.xml">
    <lib dir="${buildwar.dest}/WEB-INF/lib"/>
    <classes dir = "${buildwar.dest}/WEB-INF/classes"/>
    <fileset dir="${buildwar.dest}">
    </fileset>
   </war>

</target>


<!-- =================================================================== -->
<!-- 发布到本的resin和tomcat-->
<!-- =================================================================== -->

<target name="publish" depends="myceaas.war,clean">
   <copy todir="${resin.home}/webapps">
    <fileset dir="${war.dest}" >
     <include name="**/*.war"/>
    </fileset>
   </copy>
   <copy todir="${tomcat.home}/webapps">
    <fileset dir="${war.dest}" >
     <include name="**/*.war"/>
    </fileset>
   </copy>
  
</target>
<!--
<target name="SyncMain">
          <java classname="com.ce.synchronization.main.SyncMain" failonerror="true" fork="yes">
              <classpath refid="classpath"/>
          </java>
</target>
-->
<!-- =================================================================== -->
<!-- 产生javadoc api 文档-->
<!-- =================================================================== -->
<target name="javadoc" depends="build">
   <mkdir dir="${build.javadocs}" />
   <javadoc packagenames="${packages}" sourcepath="${build.src}" destdir="${build.javadocs}" author="true" version="true" use="true" splitindex="true" windowtitle="${Name} API" doctitle="${Name}">
    <classpath refid="classpath" />
   </javadoc>
</target>
<!-- =================================================================== -->
<!-- 清除临时文件-->
<!-- =================================================================== -->
<target name="clean" depends="init">
   <delete dir="${build.src}"/>
   <delete dir="${build.dest}/org"/>
   <delete dir="${build.dest}/com"/>
   <delete dir="${buildwar.dest}"/>
   <delete>
    <fileset dir="${build.dest}" includes="**/*.class"/>
   </delete>
</target>


 

 

 

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

 

 

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

<project basedir="." default="war" name="bid">
 <property name="app-name" value="bid" />
 <property name="release-version" value="20060720-1549" />
 <property name="src" value="src" />
 <property name="dist" value="dist" />
 <property name="classes" value="WebRoot/WEB-INF/classes" />
 <property name="lib" value="WebRoot/WEB-INF/lib" />
 <property name="ext-lib" value="ext-lib" />
 <property name="charset" value="UTF-8" />
 <property name="javadoc-packagenames" value="com.safemore.bid,com.safemore.bid.bid,com.safemore.bid.common,com.safemore.bid.issue,com.safemore.bid.logon,com.safemore.bid.util" />

 <patternset id="resources">
  <include name="**/*.jpe" />
  <include name="**/*.jpeg" />
  <include name="**/*.rmf" />
  <include name="**/*.wav" />
  <include name="**/*.midi" />
  <include name="**/*.mid" />
  <include name="**/*.au" />
  <include name="**/*.gif" />
  <include name="**/*.png" />
  <include name="**/*.jpg" />
  <include name="**/*.aiff" />
  <include name="**/*.properties" />
  <include name="**/*.txt" />
  <include name="**/*.xml" />
 </patternset>

 <path id="classpath">
  <pathelement location="${dist}" />
  <fileset dir="${lib}">
   <include name="*.jar" />
  </fileset>
  <fileset dir="${ext-lib}">
   <include name="*.jar" />
  </fileset>
 </path>

 <target name="init">
  <mkdir dir="${dist}" />
  <mkdir dir="${classes}" />
 </target>

 <target name="war" depends="resource, jar">
  <!--touch file="WEB-INF/web.xml"/-->
  <war compress="false" destfile="${dist}/${app-name}-${release-version}.war" webxml="WebRoot/WEB-INF/web.xml">
   <fileset dir="WebRoot">
    <include name="**/*.*" />
    <exclude name="WEB-INF/" />
   </fileset>
   <fileset dir="WebRoot">
    <include name="WEB-INF/*.*" />
    <exclude name="WEB-INF/web.xml" />
    <exclude name="WEB-INF/${app-name}.xml" />
    <exclude name="lib/" />
   </fileset>
   <lib dir="${lib}">
    <include name="*.jar" />
   </lib>
   <!--
   <lib dir="${dist}">
    <include name="*.jar" />
   </lib>
   -->
   <classes dir="${classes}" />
  </war>
 </target>

 <target name="resource">
  <copy todir="${classes}">
   <fileset dir="${src}">
    <patternset refid="resources" />
   </fileset>
  </copy>
 </target>

 <target name="clean">
  <delete dir="${classes}" />
  <delete dir="${dist}" />
 </target>

 <target name="compile" depends="init">
  <javac classpathref="classpath" debug="true" deprecation="false" destdir="${classes}" nowarn="false" encoding="${charset}">
   <src path="${src}" />
  </javac>
 </target>

 <target name="jar" depends="resource, compile, init">
  <jar compress="false" destfile="${dist}/${app-name}-${release-version}.jar">
   <fileset dir="${classes}">
    <include name="**/*.class" />
    <patternset refid="resources" />
   </fileset>
  </jar>
 </target>

 <target name="rejar" depends="clean, jar" />

 <target name="ear" depends="war">
  <ear destfile="${dist}/${app-name}-${release-version}.ear" appxml="META-INF/application-j1.3.xml">
   <fileset dir="${dist}" includes="${app-name}-${release-version}.war" />
  </ear>
 </target>

 <target name="release" depends="war">
  <zip destfile="${dist}/${app-name}-${release-version}.zip">
   <zipfileset dir="${dist}" includes="${app-name}-${release-version}.war" prefix="." />
   <zipfileset dir="db" includes="*.*" prefix="db" />
   <zipfileset dir="doc" includes="*.*" prefix="doc" />
  </zip>
 </target>

 <target name="javadoc">
  <javadoc encoding="${charset}" charset="${charset}" access="public" author="true" destdir="${dist}/javadoc" nodeprecated="false" nodeprecatedlist="false" noindex="false" nonavbar="false" notree="false" source="1.5" splitindex="true" use="true" version="true" packagenames="${javadoc-packagenames}" sourcepath="${src}" classpathref="classpath" />
 </target>
</project>

分享到:
评论

相关推荐

    ant打war包

    在IT行业中,构建和部署Web应用是至关重要的过程,而"ant打war包"就是这一过程中的一项技术。Ant是Apache软件基金会开发的一款Java构建工具,它以XML为基础,用于自动化构建Java项目,如生成JAR、WAR等类型的打包...

    使用ant打war包

    ### 使用Ant构建WAR包详解 在Java开发领域中,Ant是一种非常流行的自动化构建工具,它可以帮助开发者自动完成项目构建过程中的各种任务,如编译、测试、打包等。本篇文章将详细阐述如何使用Ant来构建WAR(Web ...

    用ant进行war打包

    在Ant中,这个过程通常由`&lt;war&gt;`任务完成,它位于`ant.jar`的`org.apache.tools.ant.taskdefs`包下。以下是一个基本的`build.xml`配置示例: ```xml &lt;project name="MyWebApp" default="war" basedir="."&gt; ${...

    将项目打成war包

    打包:将编译后的*.calss文件打包成 jar或war包; 部署:将打包后的war文件部署到制定的web应用服务器中去。(tomcat的webappers中去) ******************************* ant默认执行build.xml文件 ant是使用的java...

    ant.jar下载

    org.apache.tools.ant.taskdefs.War org.apache.tools.ant.taskdefs.Zip org.apache.tools.ant.types.DirSet org.apache.tools.ant.types.Mapper org.apache.tools.ant.BuildListener org.apache.tools.ant....

    ant-1.10.5.jar

    ant主要是用来为我们的开发人员提供打包服务的jar包,只要用户将这个包导入Myeclipse等开发软件中就能够实现打开工作,你可以利用ant不熟将project打包称war包,然后部署到指定的服务器中。在开发过程中,当一个代码...

    ant+Spring的jar包大包下载

    在"ant+Spring的jar包大包下载"中,用户可能获得的是一个包含了Ant和Spring框架相关库的集合。这个压缩包可能包含以下内容: 1. Ant的jar文件:如`ant.jar`,这是Ant运行所需的核心库,包含了所有的任务和类。 2. ...

    ant-weblogic.jar.zip

    《Ant与WebLogic集成:详解ant-weblogic.jar.zip》 在软件开发领域,尤其是在Java环境中,构建工具和应用服务器的无缝集成是至关重要的。本文将深入探讨Ant与Oracle WebLogic Server的集成,以及如何利用"ant-...

    WAR包的制作和解压过程指导

    WAR包的制作有多种方式,包括使用MyEclipse、JAR程序和Ant工具等。下面将详细介绍这些方法: ##### 2.1 MyEclipse下制作War包 在MyEclipse IDE中制作WAR包是一种常见的做法,但需要注意的是,MyEclipse仅支持Web ...

    ant打ear包的详细步骤

    在 Ant build 文件中,我们将公用的 JAR 包都放到 EAR 文件下,而不是分别在 EJB JAR 包和 WAR 包中,以减少 JAR 包的冗余。 通过上面的步骤,我们可以使用 Ant 工具将 EJB 项目打包成 EAR 文件,並 deploy 到 ...

    ant-1.6.1.jar.zip

    通过编写XML格式的build.xml,开发者可以定制构建流程,包括指定源代码路径、编译选项、生成JAR或WAR包、执行JUnit测试等。同时,Ant支持插件机制,可以通过添加额外的任务或数据类型来扩展功能,如Maven插件、 Ivy...

    ant.jar________打包工具

    例如,你可以定义一个"compile"目标用于编译源代码,一个"test"目标用于执行单元测试,以及一个"dist"目标用于创建可部署的JAR或WAR文件。 2. **任务(Tasks)**:Ant的任务是构建过程中执行的具体操作,如复制文件...

    ant将工程打war

    在Java开发领域,Ant是一个非常重要的...在描述的“简单的案例用ant将工程打war”中,我们首先要创建`build.xml`文件,并设置基本的项目配置。这通常包括项目的源代码目录、输出目录、类路径等信息。例如: ```xml ...

    把jsp编译打包成jar

    最后,可以使用`&lt;jar&gt;`任务将WAR文件中的特定目录结构提取出来并打包成jar。 3. **Web.xml配置**:在描述中提到的“自动生成web.xml中的servlet配置”,这意味着Ant构建过程可能包含了生成web.xml文件的部分,该...

    java利用Ant脚本生成war包全过程

    4. **添加库文件**:将项目`lib`目录中的jar包拷贝到WAR包的`WEB-INF/lib`目录下。 5. **打包**:最后,将所有内容压缩成WAR格式的归档文件。 以下是使用Ant脚本生成WAR包的一个示例: ```xml &lt;!-- 定义一个工程...

    将项目打成jar包

    打包:将编译后的*.calss文件打包成 jar或war包; 部署:将打包后的war文件部署到制定的web应用服务器中去。(tomcat的webappers中去) ******************************* ant默认执行build.xml文件 ant是使用的java...

    spring中用到的ant包

    - **打包JAR/WAR**:使用`jar`或`war`任务创建可部署的包。 - **执行测试**:使用`junit`任务运行项目中的单元测试。 - **依赖管理**:尽管不如Maven或Gradle强大,Ant也可以通过`path`元素来管理依赖项。 - **构建...

    使用Ant编译打包

    如果想执行特定目标,如`jar`或`war`,则可以输入`ant jar`或`ant war`。 **四、发布War包** 当你成功生成了WAR包后,下一步通常是将其部署到应用服务器上。这通常涉及到将WAR文件复制到服务器的特定目录,例如...

Global site tag (gtag.js) - Google Analytics