用WAR文件部署资源

ZDNet软件频道 时间:2003-04-07 作者:翻译:Java研究组织-李巍 |  我要评论()
本文关键词:javatips
你可以使用由Ant构造脚本创建的Web应用文件(WAR)将JAVA代码部署到服务器上。一个JAVA的Web应用在名为WEB-INF的特殊目录里有固定的格式。
本文译自Builder.com你可以使用由Ant构造脚本创建的Web应用文件(WAR)将JAVA代码部署到服务器上。一个JAVA的Web应用在名为WEB-INF的特殊目录里有固定的格式。这个目录下包含一个放jar文件的lib目录、一个放未打包的类文件的classes目录、和一个描述应用的web.xml文件。

WEB应用其他的部分就是一般的HTML、JSP、图像文件以及目录。这些可以被压缩到一个.war文件里,然后可以不对服务器做任何修改的部署到服务器上。

最重要的是,服务器会注意到放在webapps/目录下的.war文件,并且自动把文件解压缩,在不改变server.xml文件的情况下把新的应用加载到服务器上。当应用修改了,重新部署它是一个很简单的事情,只要用新的.war文件覆盖旧的即可。服务器会再次注意这个文件,解压缩,并重新加载所有的类文件。

Ant中的war任务是jar任务的扩展,它对WEB-INF目录有特殊的处理,这个任务可以有4个子标签:lib、classes、webinf和metainf。在这些标签里指定的文件将放到对应的目录下,其中metainf标签下的放到META-INF目录下。

下面是一个war任务的例子:

<war warfile="ApplicationVersion2.war" webxml="xml/av2-web.xml">
  <fileset dir="html"/>
  <lib dir="lib/ext">
    <exclude name="oracle*.jar"/>
  </lib>
  <classes dir="build/servlets">
    <include name="**/*.class"/>
  </classes>
</war>

这个例子将生成一个名为ApplicationVersion2.war的文件。它从xml/av2-web.xml获得它的web.xml文件,并且包含HTML目录下的所有文件。然后,它把我们lib/ext目录下的所有文件放到war文件的WEB-INF/lib目录下,其中不包括Oracle的那些,再把位于build/servlets目录下的所有servlet文件放到WEB-INF/classes目录下。



责任编辑:炒饭

欢迎评论或投稿


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134