光辉飞翔

导航

 
关于WAR包的含义、制作和解压(一)
2011-08-18 12:09

以下资料来自互联网:

1.概念

war包:是做好一个web应用后,通常是网站,打成包部署到容器中。 jar包:通常是开发时要引用通用类,打成包便于存放管理。 ear包:企业级应用,通常是EJB打成ear包。

制作:

 

 

WAR包,其实是将程序进行打包后形成的一种压缩包,在目前的系统、应用中使用较为普遍。其制作过程一般可以通过MyEclipse自带的导出功能实现,也可以使用jdk中的jar程序完成,ant也提供了打WAR包的办法,以下分别进行介绍。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

1.1    MyEclipse下制作War包

首先需要注意的是,MyEclipse只能对Web Project类型的工程进行WAR包制作,对于我们常用的Java Project则无法进行WAR包制作。

打开MyEclipse,在【Package Explorer】中选中需要压缩的项目,点击工具栏中的“File->Export…”,在弹出的【Export】对话框上,点击选中树状图中的“J2EE->WAR file (MyEclipse)”,点击【Next >】继续,如图2.1所示:

 

 

在【WAR Export】对话框上选择需要压缩的项目名称,点击【Browse…】,在弹出的【另存为】对话框上选择WAR包保存的路径和名称,确认后点击【Finish】,开始进行压缩。具体如图2.2所示:

 

 

1.2    JAR程序打WAR包

首先需要在机器上安装1.4版本以上的jdk,并配置好环境变量,具体可以参考《JDK的安装和配置》和《软件测试环境配置》等文档进行。配置完毕后,在命令行窗口下输入java –versionjar /?进行检查,以确保所需JDK已经配置正确。

打开命令行窗口,切换至程序所在目录下,然后输入jar -cvf test.war *,回车,压缩开始。压缩过程结束后,在程序目录下就会生成一个test.war的文件。下面以制作甘肃综合经营管理系统WAR为例进行说明。

该系统在我本机上的E:\gansuxintong\_program\ColMANAProject\ColMANAWeb目录下,下面是操作过程的截图:

 

 

下面是我将上边的操作过程整理后的一个批处理脚本的内容,仅做参考:

e:

cd E:\ColMANAWeb

jar -cvf ColMANAWeb.war *

注意:

该方法会将指定目录下的全部文件打进WAR内,如果需要清除SVN或者CVS文件,请在打包前手动进行。

1.3    Ant工具打WAR包

Apache Ant是目前事实上的Java应用的标准build脚本工具。使它大受欢迎的一个主要愿意是它的和灵活,允许程序员创建自己的Task来对Ant进行扩展。Ant也提供了打WAR包的办法,下面仍然以将ColMANAWeb目录打成WAR包为例,对使用方法进行介绍:

1.3.1             配置ant

首先下载获取ant程序,解压至本机相应目录下(假设将ant解压至D:\Program Files\apache-ant-<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /><?xml:namespace prefix = st1 /><?xml:namespace prefix = st1 />1.7.1目录下),进行环境变量配置:

1、新建ANT_HOME变量,值为D:\Program Files\apache-ant-1.7.1;

2、修改PATH变量,将D:\Program Files\apache-ant-1.7.1\bin置于前端;

环境变量修改完毕后,进入命令行窗口,输入ant,回车执行后出现如图2.5提示,则表示ant已经配置成功。

说明:ant命令执行后,会寻找默认的配置文件build.xml,并按照该文件的设置进行任务的执行。由于检查ant配置是否已经完成时,只是输入了ant命令,而没有指定build.xml文件的位置,所以会出现“Build failed”的提示。

1.3.2   编制build.xml文件

新建build.xml文件,内容如下:

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

<project name="ColMANAWeb" default="Createwar" basedir=".">

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

<target name="Createwar" description="Build the web application archive">

      <war warfile="${basedir}/ColMANAWeb.war" webxml="${web.dir}/WEB-INF/web.xml">

          <fileset dir="${web.dir}" />

      </war>

</target>

</project>

红色部分我们可以根据程序目录不同进行调整,其他内容均不需进行修改。将该文件放置于E:\gansuxintong\_program\ColMANAProject\目录下,此时,build.xml文件与程序目录ColMANAWeb即同在ColMANAProject目录下。

posted on 2012-08-07 09:47  光辉飞翔  阅读(4077)  评论(0编辑  收藏  举报