1. 程式人生 > 其它 >理解-jar包和war包的區別

理解-jar包和war包的區別

一、概念

  1. jar包:JAR包是類的歸檔檔案,JAR 檔案格式以流行的 ZIP 檔案格式為基礎。與 ZIP 檔案不同的是,JAR 檔案不僅用於壓縮和釋出,而且還用於部署和封裝庫、元件和外掛程式,並可被像編譯器和 JVM 這樣的工具直接使用。
  2. war包:war包是JavaWeb程式打的包,war包裡面包括寫的程式碼編譯成的class檔案,依賴的包,配置檔案,所有的網站頁面,包括html,jsp等等。一個war包可以理解為是一個web專案,裡面是專案的所有東西。

二、目錄結構

  1. jar包裡的com裡放的就是class檔案,配置檔案,但是沒有靜態資源的檔案,大多數 JAR 檔案包含一個 META-INF 目錄,它用於儲存包和擴充套件的配置資料,如安全性和版本資訊。
  2. 而war包裡的WEB-INF裡放的class檔案和配置檔案,META-INF和jar包作用一樣,war包裡還包含靜態資源的檔案

三、總結起來就是有兩點不同:

  1. war包和專案的檔案結構保持一致,jar包則不一樣。
  2. jar包裡沒有靜態資源的檔案(index.jsp)

四、部署專案的區別

  1. 部署普通的spring專案用war包就可以,部署springboot專案用jar包就可以,因為springboot內建tomcat。