天天看點

war包與jar包差別

jar包是java打的包,jar包中隻是用java來寫的項目打包來的,裡面隻有編譯後的class位元組碼檔案和一些部署檔案。

jar包:通常是開發時要引用的通用類,打成包便于存放管理。簡單來說,jar包就是别人已經寫好的一些類,
  然後對這些類進行打包。可以将這些jar包引入到你的項目中,可以直接使用這些jar包中的類和屬性,這些jar包一般放在lib目錄下。
           

而war包裡面的東西就全了,包括寫的代碼編譯成的class位元組碼檔案,依賴的包,配置檔案,

所有的網站頁面,包括html,jsp等等。一個war包可以了解為是一個web項目,裡面是項目的所有東西。

war包:是一個可以直接運作的web子產品,通常用于網站,打成包部署到容器中。
以Tomcat來說,将war包放置在其\webapps\目錄下,然後啟動Tomcat,這個包就會自動解壓,就相當于釋出了。
    war包是Sun提出的一種web應用程式格式,與jar類似,是很多檔案的壓縮包。
    war包中的檔案按照一定目錄結構來組織。根據其根目錄下包含有html和jsp檔案,或者包含有這兩種檔案的目錄,另外還有WEB-INF目錄。
    通常在WEB-INF目錄下含有一個web.xml檔案和一個classes目錄,web.xml是這個應用的配置檔案,
    而classes目錄下則包含編譯好的servlet類和jsp,或者servlet所依賴的其他類(如JavaBean)。
    通常這些所依賴的類也可以打包成jar包放在WEB-INF下的lib目錄下。
           

1.jar包的介紹

JAR(Java Archive,Java 歸檔檔案)是與平台無關的檔案格式,它允許将許多檔案組合成一個壓縮檔案。JavaSE程式可以打包成Jar包(J其實可以了解為Java了)。

JAR 檔案格式以流行的 ZIP 檔案格式為基礎。與 ZIP 檔案不同的是,JAR 檔案不僅用于壓縮和釋出,而且還用于部署和封裝庫、元件和插件程式,并可被像編譯器和 JVM 這樣的工具直接使用。在 JAR 中包含特殊的檔案,如 manifests 和部署描述符,用來訓示工具如何處理特定的 JAR。

簡單來說,Java編譯好之後生成class檔案,但如果直接釋出這些class檔案的話會很不友善,是以就把許多的class檔案打包成一個jar,jar中除了class檔案還可以包括一些資源和配置檔案,通常一個jar包就是一個java程式或者一個java庫。可以将這些jar包引入到你的項目中,可以直接使用這些jar包中的類和屬性,這些jar包一般放在lib目錄下。

2.war包的介紹

war(Web application Archive),與jar基本相同,它通常表示這是一個Java的Web應用程式的包,是一個可以直接運作的web子產品,通常用于網站,打成包部署到容器中。以Tomcat來說,将war包放置在其\webapps\目錄下,然後啟動Tomcat,這個包就會自動解壓,就相當于釋出了。tomcat這種Servlet容器會認出war包并自動部署。

war包中的檔案按照一定目錄結構來組織。其根目錄下包含有html和jsp檔案,或者包含有這兩種檔案的目錄,另外還有WEB-INF目錄。通常在WEB-INF目錄下含有一個web.xml檔案和一個classes目錄,web.xml是這個應用的配置檔案,而classes目錄下則包含編譯好的servlet類和jsp,或者servlet所依賴的其他類(如JavaBean)。通常這些所依賴的類也可以打包成jar包放在WEB-INF下的lib目錄下。

簡單來說,war包是JavaWeb程式打的包,war包裡面包括寫的代碼編譯成的class檔案,依賴的包,配置檔案,所有的網站頁面,包括html,jsp等等。一個war包可以了解為是一個web項目,裡面是項目的所有東西。

3.差別

WAR檔案代表了一個Web應用程式,JAR是類的歸檔檔案。

所有的包都是用jar打的,隻不過目标檔案的擴充名不一樣。

war包與jar包差別

繼續閱讀