使用Ant進行Web開發, 第一部分

發表于:2007-06-22來源:作者:點擊數: 標簽:
本文是Ant: The Definitive Guide, 2nd Edition的摘錄的兩部分當中的第一部分,作者Steve Holzner介紹了web application的打包。并將于下周對第二部分做出修改,它將會介紹WEB 應用程序的部署,包括get, serverdeploy, 和 scp。 對于Ant 開發 者來說開發Web

   
  本文是Ant: The Definitive Guide, 2nd Edition的摘錄的兩部分當中的第一部分,作者Steve Holzner介紹了web application的打包。并將于下周對第二部分做出修改,它將會介紹WEB 應用程序的部署,包括get, serverdeploy, 和 scp。
  

  對于Ant開發者來說開發Web就好像面包與黃油一樣。在你的配置當中包含一系列的任務:第四章中我們將會介紹對應用包括Web應用的打包和部署的方法,包括移動,復制,ftp,telnet,sshesec,和mail等任務。Ant提供給我們的工具比我們提高的更多。這一章中我們將會介紹針對Web應用打包的方法,包括deploy,reload,和undeploy等任務。第九章中將會介紹更多關于EJB的Ant任務。
  
  建立WAR文件
  
  War任務是jar任務的一個擴展,它將Web應用程序打進.war文件當中,通過特殊的方法,文件將會被放置到服務器的WEB-INF/lib, WEB-INF/classes 和 WEB-INF目錄當中。舉例來說,當用戶在編譯工程之后產生以下的目錄布局:
  
 使用Ant進行Web開發, 第一部分(圖一)

  例8-1當中使用的build文件將會把你需要部署的應用創建在.war文件當中,將.class文件放入WEB-INF/classes目錄,重新命名login.xml,web.xml文件,并將其放入WEB-INF目錄當中,以及其它任務。
  
  例8-1 建立war文件(ch08/war/build/xml)
  
  <?xml version="1.0" encoding="UTF-8" ?>
  <project default="main" basedir=".">
  <property name="bin" value="output" />
  <property name="src" value="source" />
  <target name="main">
  <war destfile="login.war" webxml="${src}/login.xml">
  <fileset dir="${src}/html"/>
  <classes dir="${bin}"/>
  </war>
  </target>
  </project>
  
  build 文件如下所示:
  
  %antBuildfile: build.xmlmain:
  [war] Building war: /home/steven/ant/ch08/war/login.warBUILD SUCCESSFULTotal time: 2 seconds
  
  通過上面的命令,我們建立了.war文件。除了將指定文件打包之外,Ant同時在.war文件當中提供了一個缺省的清單文件,Manifest.mf。這個文件包含下面的內容:
  
  Manifest-Version: 1.0Ant-Version: Apache Ant 1.6.1Created-By: 1.4.2_03-b02 (Sun Microsystems Inc.)
  
  在建立.war文件之后,用戶可以將它部署到web服務器的部署目錄下,例如Tomcat服務器上的webapps目錄。
  
  在表8-1中列出了war任務的屬性:
  
  小技巧:war任務是一種指定.war文件部署的快捷方式。在使用zip或者jar任務時,使用不同的前綴(prefix)和完整路徑(fullpath)可以達到與war任務同樣的效果。
  
  表8-1. war 任務屬性列表
  
 使用Ant進行Web開發, 第一部分(圖二)

  war任務可以包含像fileset及zipfileset這些指定在.war文件中應該包含有什么文件的元素。war任務可以通過這些元素來指定各種文件應該放在什么地方:
  
  -webinf元素里面的文件,放在WEB-INF路徑下
  -classes元素里面的文件,放在WEB-INF/classes路徑下
  l-ib元素里面的文件,放在WEB-INF/lib路徑下
  -metainf元素里面的文件,放在META-INF路徑下
  
  建立CAB文件
  
  cab任務的作用是建立Microsoft.cab 檔案文件,cab任務的使用方法類似于jar或是zip任務。.cab文件相當于.NET系統的.war文件,用于部署.NET應用程序到服務器。這個任務在Windows環境下使用外部工具cabarc(Microsoft提供)工作,cabarc必須包含在執行路徑當中。
  
  鑒于Microsoft Visual Studio IDE已經提供了很多強有力集成工具和向導來建立.cab文件,我們不打算在這里花太多的時間;大多數的Microsoft開發者也不使用Ant來解決他們的構建問題。提供一個使用Ant cab任務的建立例子:
  
  <cab cabfile="${deploy}/app.cab" basedir="${output}" />
  
  小技巧:你可以免費的得到Microsoft C#的命令行編輯器,csc, 如果你的Windows并沒有包含這個工具,你可以安裝.NET Framework's Software Development Kit (SDK)(可以在http://msdn.microsoft.com/downloads上得到)。csc的編譯器被包含在這個SDK當中。
  
  表 8-2. The cab 任務屬性列表
  
使用Ant進行Web開發, 第一部分(圖三)

  用戶可以使用嵌套的fileset元素來指定想要包含在文檔當中的文件。相對于其他Ant任務來說這個任務形成一個隱含的FileSet,同時支持fileset元素(dir成為basedir)的所有屬性,包括嵌套的元素include,exclude和patternset元素。

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97