注:有可能打包失败是eclipse没有集成的原因,用我自己的eclipse可以,同事那就有可能打包失败,一定要注意这点。

1、先在eclipse中集成或自己安装解压ant,总之有可用的ant就好。

2、照下图新建extlib(比如servlet-api.jar是tomcat里的包,ant打包需要但是引用不到的包都放入extlib文件夹),war(打成功的war包的位置)文件夹。

3、编写build.xml文件,内容如下:

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

<project name="GBEMSSystemMGR" default="deploy" basedir="."><!--GBEMSSystemMGR是项目名称-->

    <!-- 判断当前系统是windows还是linux  -->
<condition property="isWindows">
<os family="windows" />
</condition> <condition property="isLinux">
<os family="unix" />
</condition> <!-- 定义了一些变量 -->
<property name="resource.dir" location="${basedir}/resources" />
<property name="src.dir" location="${basedir}/src" />
<property name="web.dir" location="${basedir}/WebRoot" />
<property name="web.web-inf.dir" location="${web.dir}/WEB-INF" />
<property name="lib.dir" location="${web.web-inf.dir}/lib" />
<property name="classes.dir" location="${web.web-inf.dir}/classes" />
<property name="ext.dir" location="${basedir}/extlib" /> <!--定义一个时间戳-->
<tstamp prefix="backup">
<format property="time" pattern="yyyy-MM-dd.HH.mm.ss" />
</tstamp> <!--path表示一个文件或路径名列表-->
<path id="classpath">
<!--Fileset 数据类型定义了一组文件-->
<fileset dir="${lib.dir}">
<!--该文件夹下所有以.jar结尾的文件-->
<include name="*.jar" />
</fileset>
<!--Fileset 数据类型定义了一组文件-->
<fileset dir="${ext.dir}">
<!--该文件夹下所有以.jar结尾的文件-->
<include name="*.jar" />
</fileset> </path> <property name="war.file.path" location="${basedir}/war" />
<property name="war.file.name" value="GBEMSSystemMGR.war" /> <!-- =================================
target: deploy
================================= -->
<target name="deploy" depends="clean-classes-dir,copy-resource-to-classes,full-compile,war-app,deploy-under-windows">
<echo>now you can start tomcat.</echo>
</target> <target name="deploy-under-windows" if="isWindows">
<!-- echo 往控制台输出一段话 -->
<echo>一般使用Eclipse集成的tomcat进行测试,省略</echo> </target> <!-- =================================
target: war-app
================================= -->
<target name="war-app">
<echo>make War ..</echo>
<mkdir dir="${war.file.path}" />
<!--将指定文件打成war包-->
<war warfile="${war.file.path}/${war.file.name}" webxml="${web.web-inf.dir}/web.xml">
<lib dir="${lib.dir}" />
<classes dir="${classes.dir}" />
<fileset dir="${web.dir}">
</fileset>
</war>
<echo>War Success : ${war.file.path}/${war.file.name}</echo>
</target> <!-- =================================
target: full-compile
================================= -->
<target name="full-compile" description="description">
<echo>start compile.</echo>
<!--编译,其中refild标签是引用之前定义的name为classpath的path文件或路径-->
<javac encoding="utf-8" srcdir="${src.dir}" destdir="${classes.dir}" includeAntRuntime="false" debug="true" >
<classpath refid="classpath" />
</javac>
<javac encoding="utf-8" srcdir="${resource.dir}" destdir="${classes.dir}" includeAntRuntime="false" debug="true">
<classpath refid="classpath" />
</javac>
<echo>full-compile successfully.</echo>
</target> <!-- copy src/**/*.(xml|properties ...) to classes dir -->
<target name="copy-resource-to-classes">
<!--将指定文件拷贝到指定目录-->
<copy todir="${classes.dir}">
<fileset dir="${src.dir}">
<!-- 表示除了以.java结尾的文件都包含-->
<exclude name="**/*.java" />
</fileset>
</copy>
<copy todir="${classes.dir}">
<fileset dir="${resource.dir}">
<!-- 表示除了以.java结尾的文件都包含-->
<exclude name="**/*.java" />
</fileset>
</copy>
</target> <!-- 删除整个classes目录 -->
<target name="clean-classes-dir">
<delete dir="${classes.dir}" />
<echo>${classes.dir} deleted.</echo>
</target> </project>

eclipse中ant打war包的更多相关文章

  1. Eclipse中导入外部jar包步骤

    昨天,学习了Jar包的打包过程,现在打算记录一下,如何在Eclipse中导入外部Jar包. 第一步:在项目中鼠标右键>>New>>点击Folder. 第二步:在弹出窗口将Fol ...

  2. Eclipse中引来的jar包乱码

    Eclipse中引入的jar包乱码jar包链接的源码,中文注释为乱码的解决方法: 1.将Eclipse的Preferences中的General>ContentTypes中的Java Class ...

  3. eclipse springboot工程打war包方法及在Tomcat中运行的方法

    一, eclipse springboot打war包 1. 配置pom.xml文件 <packaging>war</packaging> <!-- 配置servlet,打 ...

  4. eclipse中如何打jar包

    在eclipse中写个小测试程序(需要用到第三方jar文件),打成jar文件,然后到linux下执行做测试,查了很多资料也没有说怎么把第三方jar打入jar,使用ant,又太麻烦. 1   选择Mai ...

  5. Eclipse中Ant的配置与测试 转

    欢迎关注我的社交账号: 博客园地址: http://www.cnblogs.com/jiangxinnju/p/4781259.html GitHub地址: https://github.com/ji ...

  6. tomcat中如何运行war包呢

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPQAAADRCAIAAAB0LAgsAAAQtklEQVR4nO2d7W/bxh3H9ZfZbRrFOj

  7. Eclipse中Ant的配置与测试

    在Eclipse中使用Ant Ant是Java平台下非常棒的批处理命令执行程序,能非常方便地自动完成编译,测试,打包,部署等等一系列任务,大大提高开发效率.如果你现在还没有开始使用Ant,那就要赶快开 ...

  8. 如何在eclipse中引用第三方jar包

    在用UiAutomator做手机自动化测试过程中,在UiAutomator的基础之上进一步封装了里边的方法,以使case开发更顺手.直接在工程的根目录下新建了个libs的文件夹,把封装好的框架打成ja ...

  9. Eclipse中导入外部jar包

    首先在项目下创建一个文件夹,保存我们的jar包. 在项目名上右击,依次点击[New]-->[Floder],打开新建文件夹窗口   输入文件夹名称[lib],点击[ok].我们通常在lib文件夹 ...

随机推荐

  1. HDU2167(SummerTrainingDay02-D 状态压缩dp)

    Pebbles Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Sub ...

  2. 设计模式原则(1)--Single Responsibility Principle(SRP)--单一职责原则

    1.定义: 不要存在多于一个导致类变更的原因.通俗的说,即一个类只负责一项职责.  2.使用场景: 如果类A有两个职责:d1,d2.当职责d1需要修改时,可能会导致原本运行正常的职责d2功能产生问题. ...

  3. 微信小程序获取当前地址以及选择地址详解 地点标记

    首先定义事件: bindtap='getLocation' <view class='store-bot' bindtap='getLocation'> <view class='c ...

  4. Stylus基本使用

    介绍 在学习一个 Vue.js 项目的过程中,注意到源码中样式的部分并没有用熟悉的 .css 样式文件,而是发现了代码长得和 CSS 相像的 .styl 文件.这个 .styl 以前没见过啊,你是谁? ...

  5. 【读书笔记】iOS-网络-Web Service协议与风格

    协议指的是在与其它系统交换结构化信息时所要遵循的一套格式,过程与规则.此外,协议定义了在传输过程中所要使用的数据格式.这样,接收系统就能正确地解释结构化信息并做出正应的回应. 1,简单对象访问协议. ...

  6. HTML5之美

    如今大热的HTML5到底美在哪里?HTML5到底能为实际的移动开发带来哪些改变?来自阿里云云手机服务运营部的前端开发工程师正邪 (廖健)分享了他眼中的HTML5之美,主要讲诉HTML5的常见原理并从C ...

  7. MaterialRefreshLayout+ListView 下拉刷新 上拉加载

    效果图是这样的,有入侵式的,非入侵式的,带波浪效果的......就那几个属性,都给出来了,自己去试就行. 下拉刷新 上拉加载 关于下拉刷新-上拉加载的效果,有许许多多的实现方式,百度了一下竟然有几十种 ...

  8. 常用的第三方模块 chardet url

    chardet 字符串编码一直是令人非常头疼的问题,尤其是我们在处理一些不规范的第三方网页的时候.虽然Python提供了Unicode表示的str和bytes两种数据类型,并且可以通过encode() ...

  9. jquery 绑定事件 获取方式 --------------data event 获取

    //绑定事件 bind event $("body").on("click",function(){ console.log("in") } ...

  10. 学习dbms_parallel_execute包

    一.简介 ORACLE11g R2版本的新特性之一就是引进了DBMS_PARALLEL_EXECUTE包,使用DBMS_PARALLEL_EXECUTE包批量并行递增式的更新表. 更多ORACLE11 ...