ant:如何用ant将web project打包成war包
说明:src中的文件将不会呈现出来,诸位可以自己写一个简单的web项目,然后依照我所提供的ant脚本配置来设置。
文件结构如图所示:
配置为下:
build.xml
<?xml version="1.0" encoding="UTF-8"?>
<project default="clean">
<property name="bulid.dir" value="build" description="输出目录"></property>
<property name="bulid.web.dir" value="${bulid.dir}/WEB-INF" description="web配置输出目录"></property>
<property name="bulid.web.class.dir" value="${bulid.web.dir}/classes" description="web类输出目录"></property>
<property name="bulid.web.lib.dir" value="${bulid.web.dir}/lib" description="web引用jar输出目录"></property>
<property name="src.dir" value="src" description="源代码目录"></property>
<property name="web.root.dir" value="WebRoot" description="web相关文件目录"></property>
<property name="encoding" value="utf-8" description="文件编码"></property>
<target name="clean" description="清理输出目录">
<delete dir="${bulid.dir}"></delete>
<mkdir dir="${bulid.dir}"/>
<mkdir dir="${bulid.web.dir}"/>
<mkdir dir="${bulid.web.lib.dir}"/>
<mkdir dir="${bulid.web.class.dir}"/>
</target>
<fileset id="basic.jars.file" dir="../JAR_File">
<include name="bean/*.jar"/>
<include name="loggin/*.jar"/>
<include name="javaee/jst1-1.2.jar"/>
</fileset>
<fileset id="strus.jars.file" dir="../JAR_File/struts/struts1.3/core">
<exclude name="commons-beanutils-1.8.0.jar" />
<exclude name="commons-logging-1.0.4.jar" />
</fileset>
<fileset id="javee.jars.file" dir="../JAR_File">
<include name="javaee/javaee.jar"/>
</fileset>
<target name="complie">
<antcall target="clean"></antcall>
<javac srcdir="${src.dir}" encoding="${encoding}" destdir="${bulid.web.class.dir}">
<classpath>
<!-- 在refid中不能用","来隔离多个文件集 -->
<fileset refid="basic.jars.file"></fileset>
<fileset refid="strus.jars.file"></fileset>
<fileset refid="javee.jars.file"></fileset>
</classpath>
</javac>
<copy todir="${bulid.web.class.dir}">
<!-- 复制源代码目录中所有的非java文件 -->
<fileset dir="${src.dir}" excludes="**/*.java"></fileset>
</copy>
<copy todir="${bulid.web.lib.dir}" flatten="true">
<fileset refid="basic.jars.file"></fileset>
<fileset refid="strus.jars.file"></fileset>
</copy>
<copy todir="${bulid.dir}">
<fileset dir="${web.root.dir}"></fileset>
</copy>
</target>
<target name="make.war" depends="complie">
<!-- war为打包web项目压缩文件, destfile为目标输出文件,basedir为需要打包的web项目目录 -->
<war destfile="${bulid.dir}/AntTwo.war" basedir="${bulid.dir}"></war>
</target>
</project>
执行结果:
target-->clean
target-->complie

target-->make.jar

提示:
A:如果没有ant基础然后又想简单的了解ant的人 ,请阅读本人上一篇ant的文章《ant:入门演示
(project,target,delete,mkdir,fileset,antcall,javac,classpath,jar……)》
B:如果对war文件结构体系不了解的人,建议用myeclipse打包,解压后查看war包的文件结构体系。或者直接参考tomcat中webapps目录下的项目结构体系(war包的文件结构体系和webapps目录下的项目结构体系是一样的)。myeclipse将项目打包成war的演示:请阅读本人《将java
project打包成jar包,web project 打包成war包的几种演示》文章
ant:如何用ant将web project打包成war包的更多相关文章
- 将java project打包成jar包,web project 打包成war包的几种演示 此博文包含图片
转: http://blog.csdn.net/christine_ruan/article/details/7491559 http://developer.51cto.com/art/200907 ...
- 将java project打包成jar包,web project 打包成war包的几种演示
将java项目打包成jar 第一种:MyEclipse将java项目打包成jar. 1,右击项目,选择export . 2,点击Java,选择JAR file . 3,在JAR file文本中浏览打包 ...
- maven web project打包为war包,目录结构的变化
一个maven web project工程目录: 资源管理器中的目录层级如下: 导出为war包之后的目录层级为: 我们会发现,其实并没有如下的这些目录层级: 所以这两个目录层级只是IDE为我们添加的, ...
- Idea中如何将web项目打包成war包并放到tomcat中启动
第一步:在idea中选中Artifacts.右侧勾选Build on make生成war包,如下图 第二步:将target文件夹里面的war包拷贝到tomcat文件下的webapp目录下 第三步:修改 ...
- IDEA中将工程打包成war包及部署到Tomcat流程
工程打包成war包及部署到Tomcat流程 再IDEA开发工具中,将工程打包成war包流程: 父pom里需要移除内置的tomcat <dependency> <groupId> ...
- spring boot打包成war包的页面该放到哪里?
背景 经常有朋友问我,平时都是使用spring mvc,打包成war包发布到tomcat上,如何快速到切换到spring boot的war或者jar包上? 先来看看传统的war包样式是什么样子的? 1 ...
- spring-boot 打包成 war包发布
1.用maven打包成war包 2.将war包用zip方式打开,删除里面的tomcat-embed相关的4个包,删除spring-boot-tomcat包 3.将删除了tomcat相关嵌入包后的war ...
- 打包成war包之后如何读取配置文件
今天工作开发中遇到一个问题:在idea运行的项目读取配置文件没有问题,打包成war包之后就会报错java.io.FileNotFoundException: class path resource 原 ...
- 如何将springboot工程打包成war包并且启动
将项目打成war包,放入tomcat 的webapps目录下面,启动tomcat,即 可访问. 1.pom.xml配置修改 <packaging>jar</packaging> ...
随机推荐
- ES6之展开运算符
本文介绍ES6新增的展开运算符(spread operator). 由上图可得,展开运算符负责拼装数组和对象,与之相反,解构赋值负责分解数组和对象. 由上图可得,展开运算符能和解构赋值一起发挥成更大的 ...
- QLIKVIEW-SALESORDER\DELIVERYNOTICE\OUTSTOCK\INVOICE
//销售订单SALESORDER_TMP:NoConcatenateLOAD T_SAL_ORDER.LE_ID, [T_SAL_ORDER.LCY CODE], T_SAL_ORDER.SYSTEM ...
- sphinx转pdf显示中文
在conf.py中 修改, 加入 ctex包 latex_elements = { # The paper size ('letterpaper' or 'a4paper'). #'papersize ...
- mysql 视图 事务 索引
为什么需要有视图 * 对于复杂的查询,往往是有多个数据表进行关联查询而得到,而这种语句往往比较复杂,也可能非常频繁的使用. 比如这样的SQL语句 select goods.name,goods_cat ...
- 使用node 做静态文件服务器
# 1. 使用server-static 包 使用node可以非常快速的方法把指定目录共享出去 前提条件:安装了node,附带有npm 要托管的文件目录为 /root/www # 先创建一个目录用来存 ...
- MFC的combox禁止键盘输入
项目中有个combox的下拉窗控件,鼠标双击总能存在焦点,并且会修改combox显示的文字,网上查了好多资料,都说修改style,可是我的vs2015里没发现有style的属性,后面修改 modal ...
- Educational Codeforces Round 68 差G
Educational Codeforces Round 68 E 题意:有 n 个线段,每个都是平行 x 或者 y 轴,只有互相垂直的两线段才会相交.问形成了多少个矩形. \(n \le 5000, ...
- 搭建Docker私有仓库&用户密码认证&web可视化界面
1.拉取镜像 docker pull hyper/docker-registry-web docker pull registry 2.安装 yum install docker-compose 3. ...
- python学习笔记(22)-os文件操作模块
疑问: 如果打开操作一个文件,是用绝对路径好还是相对路径好? os模块,在lib下面,可以直接引入的,直接使用import. 一.新建一个目录,新建一个文件夹 import os #新建一个文件夹 o ...
- The Chosen One+高精度
题目描述 Welcome to the 2017 ACM-ICPC Asia Nanning Regional Contest. Here is a breaking news. Now you ha ...