Java 的JAR包、EAR包、WAR包介紹

WAR包

WAR(Web Archive file)網絡應用程序文件,是與平臺無關的文件格式,它允許將許多文件組合成一個壓縮文件。War專用於Web方面。大部分的JAVA WEB工程,都是打成WAR包進行發佈的。

War是一個web模塊,其中需要包括WEB-INF,是可以直接運行的WEB模塊。通常用於網站,打成包部署到容器中,以tomcat來說,將war文件包放置它的\webapps\目錄下,啟動Tomcat,,這個包可以自動進行解壓,也就是你的web目錄,相當於發佈了。

典型的war包內部結構如下:

webapp.war

| index.jsp

|

|— images

|— META-INF

|— WEB-INF

| web.xml // WAR包的描述文件

|

|— classes

| action.class // java類文件

|

|— lib

other.jar // 依賴的jar包

share.jar

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

JAR包

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

JAR文件格式以流行的ZIP文件格式為基礎;與ZIP文件不同的是,jar文件不僅用於壓縮和發佈,而且還用於部署和封裝庫、組件和插件程序,並可被像編譯器和JVM這樣的工具直接使用。Jar文件與zip文件唯一的區別就是在jar文件的內容中,包含了一個META-INF/MANIFEST.MF文件,這個文件是在生成jar文件的時候自動創建的。

作用:

1、作為工具包和類庫,這個是最基礎的作用,在大型項目中,一般會依賴N多個jar包

2、作為應用工程和擴展的構建單元;開發大型應用的時候,一般會將應用分為幾個單元,每個單元用jar包封裝,並相互依賴。

3、作為組件、applet或者插件程序的部署單元。

4、用於打包與組件關聯的輔助資源。

典型的jar包內部結構如下:

tools.jar

| resource.xml // 資源配置文件

| other.xml

|

|— META-INF

| MANIFEST.MF // jar包的描述文件

|— com // 類的包目錄

|—test

util.class //java類文件

EAR包

JAR(java歸檔文件)是與平臺無關的文件格式,它允許將許多文件組合成一個壓縮文件,為J2EE應用程序創建的JAR文件是EAR文件(企業JAR文件)。針對企業級項目,實際上EAR包中包含WAR包和幾個企業項目配置文件而已,一般服務器選擇WebSphere等,都會使用EAR包。

典型的ear包內部結構如下:

app.ear

| ejb.jar // ejb-jar包

| other.jar // 普通的jar包

| webapp.war // war包

|

|—META-INF

application.xml // EAR描述文件

Java 的JAR包、EAR包、WAR包介紹


分享到:


相關文章: