Java jar war ear 包区别

一、JAR

A、简介

  • JAR包通常是开发时要引用的通用类,打成包便于存放管理。简单来说,JAR包就是别人写好的一些类,然后对这些类进行打包。将这些JAR包引入项目lib中,可以直接使用这些JAR包中的类和属性。
  • JAR文件格式以流行的ZIP文件格式为基础,与ZIP文件不同的是,JAR文件不仅用于压缩和发布,而且还用于部署、封装库、组件和插件程序,并可被像编译器和JVM这样的工具直接使用。JAR文件与ZIP文件唯一的区别就是在JAR文件的内容中,包含了一个META-INF/MANIFEST.MF文件,这个文件是在生成JAR文件的时候自动创建的。

B、作用

  • 作为工具包和类库,这个是最基础的作用。在大型项目中,一般会依赖多个JAR包。
  • 作为应用工程和扩展的构建单元:开发大型应用的时候,一般会将应用分为几个单元,每个单元用JAR包封装,并相互依赖。
  • 作为组件、applet或者插件程序的部署单元。
  • 用于打包与组件关联的辅助资源。

C、内部结构

在这里插入图片描述


二、WAR

A、简介

  • WAR(Web Archive file)网络应用程序文件,是与平台无关的文件格式,它允许将许多文件组合成一个压缩文件。WAR专用于Web方面,大部分的JAVA WEB工程,都是打成WAR包进行发布的。
  • WAR是一个Web模块,其中需要包括WEB-INF,是可以直接运行的Web模块。通常用于网站打成包部署到容器中,以Tomcat来说,将War包放在Tomcat\webapps\目录下,启动Tomcat,这个包自动解压,也就是你的Web目录,相当于发布了。

B、内部结构

在这里插入图片描述
War包中的文件格式按照一定的目录结构来组织。其根目录下包含有htmljsp文件,或者包含有这两种文件的目录。另外还有WEB-INF目录,通常在WEB-INF目录下包含有一个web.xml文件和一个classes目录:web.xml是这个应用的配置文件,为classes目录下则包含编译好的servlet类,或者servlet所依赖的其他类(如javabean)。通常这些依赖的类也可以打包成JAR包放在WEB-INF/lib目录下。


三、EAR

A、简介

JAR是与平台无关的文件格式,它允许将许多文件组合成一个压缩文件,为J2EE应用程序创建的JAR文件是EAR文件(企业JAR文件)。针对企业级项目,实际上EAR包中包含WAR包和几个企业项目配置文件而已,一般服务器选择WebSphere等,都会使用EAR包。

B、内部结构

在这里插入图片描述

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 创作都市 设计师:CSDN官方博客 返回首页