日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Jar/War/Ear等包的作用与区别详解

發(fā)布時(shí)間:2025/6/15 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Jar/War/Ear等包的作用与区别详解 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Jar/War/Ear等包的作用與區(qū)別詳解

? ? ? 以客戶角度來(lái)看,jar文件就是一種封裝格式,用戶不需要知道jar包中有多少個(gè).class格式的文件及每個(gè)文件中的功能與作用,也可以得到相應(yīng)的訪問(wèn)的結(jié)果。java中除了jar格式還有war和ear等包文件。

?

JAR

WAR

EAR

英文

Java Archive file

Web Archive file

Enterprise Archive file

包含內(nèi)容

class、properties文件,是文件封裝的最小單元;包含Java類的普通庫(kù)、資源(resources)、輔助文件(auxiliary files)等

Servlet、JSP頁(yè)面、JSP標(biāo)記庫(kù)、JAR庫(kù)文件、HTML/XML文檔和其他公用資源文件,如圖片、音頻文件等

除了包含JAR、WAR以外,還包括EJB組件

部署文件

application-client.xml

web.xml

application.xml

容器

應(yīng)用服務(wù)器(application servers)

小型服務(wù)程序容器(servlet containers)

EJB容器(EJB containers)

級(jí)別

?

1、EAR文件的打包

EAR文件包括整個(gè)JSP項(xiàng)目,內(nèi)含多個(gè) EJB Module(JAR文件)和 Web Module(WAR文件)。

EAR文件的生成可以使用winrar(windows平臺(tái)上的軟件)以zip壓縮方式或者從命令行以jar命令來(lái)生成。

操作步驟:

1)先打包成war和jar,并寫(xiě)好application.xml,放到?META-INF?目錄下。

2)打包命令:(進(jìn)入文件所在目錄)

jar cf application.ear application.war application.jar META-INF\application.xml

注意:application.xml是用來(lái)描述ear中包括的war和jar等包文件

?

3)解包命令:

jar xf application.ear -C 目標(biāo)路徑

?

weblogic自帶的petstore的application.xml例子:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 <!DOCTYPE application PUBLIC?'-//Sun Microsystems, Inc.//DTD J2EE Application 1.2//EN'?'http://java.sun.com/j2ee/dtds/application_1_2.dtd'>? ?<application>? ?????<display-name>estore</display-name>? ?????<description>Application description</description>? ?????<module>? ?????????<ejb>customerEjb.jar</ejb>? ?????</module>? ?????<module>? ?????????<ejb>mailerEjb.jar</ejb>? ?????</module>? ?????<module>? ?????????<web>? ?????????????<web-uri>petstore.war</web-uri>? ?????????????<context-root>estore</context-root>? ?????????</web>? ?????</module>? ?????<module>? ?????????<ejb>petstoreEjb.jar</ejb>? ?????</module>? ?????<module>? ?????????<ejb>signonEjb.jar</ejb>? ?????</module>? ?????<module>? ?????????<ejb>personalizationEjb.jar</ejb>? ?????</module>? ?????<module>? ?????????<ejb>inventoryEjb.jar</ejb>? ?????</module>? ?????<module>? ?????????<ejb>shoppingcartEjb.jar</ejb>? ?????</module>? ?????<security-role>? ?????????<description>the gold customer role</description>? ?????????<role-name>gold_customer</role-name>? ?????</security-role>? ?????<security-role>? ?????????<description>the customer role</description>? ?????????<role-name>customer</role-name>? ?????</security-role>? ?????<security-role>? ?????????<role-name>administrator</role-name>? ?????</security-role>? ?</application>

2、WAR的使用

1)生成war包文件命令:

jar -cvf web.war 被打包文件

2)查看war包內(nèi)容命令:

jar -tf web.war

3)解壓war包文件命令:

jar -xf web.war  

? ? ? 也可使用winrar軟件選擇zip壓縮方式,并將壓縮文件后綴名改為war即可壓縮生成war文件。同樣使用winrar軟件可以打開(kāi)war 文件,或者解壓war文件。

? ? ? 使用jar命令與winrar軟件的區(qū)別在于前者在壓縮文件的同時(shí)會(huì)生成 META-INF?文件夾,內(nèi)包含MANIFEST.MF文件。

3、何時(shí)使用war或者jar文件

? ? ? 在項(xiàng)目在沒(méi)有完全開(kāi)發(fā)完成時(shí),不適合使用war文件,因?yàn)槟愕念悤?huì)由于調(diào)試之類的經(jīng)常被修改,來(lái)回創(chuàng)建war包很麻煩。當(dāng)項(xiàng)目完全開(kāi)發(fā)完成后續(xù)無(wú)需修改時(shí),可以創(chuàng)建war包。這個(gè)時(shí)候war包文件就相當(dāng)于一個(gè)web應(yīng)用程序;而jar文件就是把類和一些相關(guān)的資源封裝到一個(gè)包中,便于程序中引用。


4、jar/war/ear包文件的作用與區(qū)別:

4.1、 作用與區(qū)別

1) jar: 把開(kāi)發(fā)時(shí)要引用通用(JAVA)類及資源做封裝,打成包后便于存放管理;

2) war:一個(gè)(web)完整的應(yīng)用,通常是網(wǎng)站或WEB平臺(tái),打成包部署到容器中;

3) ear: 企業(yè)級(jí)應(yīng)用,實(shí)際上EAR包中包含WAR包和幾個(gè)企業(yè)級(jí)項(xiàng)目的配置文件而已,服務(wù)器中間件通常選擇WebSphere等都會(huì)使用EAR包。通常是EJB打成ear包。

4.2、打包方式

1) 所有的包都是用jar命令制作,只不過(guò)目標(biāo)文件的擴(kuò)展名不一樣。

2) 也可以用Ant來(lái)構(gòu)建。

3) Windows平臺(tái)winrar命令。

4.3、JET編譯成EXE

1) ?JET 是要用錢(qián)買(mǎi)的,據(jù)說(shuō) JET 也不是能把所有的 Java 程序都編譯成執(zhí)行文件,性能也要打些折扣。所以,使用制作可執(zhí)行 JAR 文件包的方法就是最佳選擇了,何況它還能保持 Java 的跨平臺(tái)特性。

總結(jié)

以上是生活随笔為你收集整理的Jar/War/Ear等包的作用与区别详解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。