上届世界杯_世界杯韩国 - cngkpt.com

jar包、war包、tar包、tar.gz包有什么区别

原文链接:jar包、war包、tar包、tar.gz包有什么区别 – 每天进步一点点 (longkui.site)

0.前言

java项目经常打包,有的打出来的是war包,有的打出来的是jar包,到底有什么区别?

1.jar包

jar包,Java Archive,翻译过来就是java档案。是Java编译好之后生成class文件,但是如果直接发布这些class文件的不方便,所以就把许多class文件打包为一个jar包。jar包中除了class文件还包括一些资源和配置文件,通常一个jar包就是一个java程序。

jar包的目录结构一般如下:

根目录

|

|---- 该包的 java 类文件目录

|

|---- META-INF 目录 // 存放该包和扩展的配置数据

2.war包

war包:属于打包文件。即Web Application Archive,与jar基本相同。但通常表示一个Java的web应用程序的包。一个 war 包可以理解成就是一个 web 项目,通常用于网站,打成包部署到容器(如 tomcat)中。

以 Tomcat 为例,war 包放置在其\webapps\ 目录下,然后启动 Tomcat,这个包就会自动解压,就相当于发布了。

war 包是 Sun 公司提出的一种 web 应用程序格式,与 jar 类似,也是很多文件的压缩包。

war 包是 JavaWeb 程序打的包。,包含了项目的所有东西,包括:

代码编译成的 class 文件依赖包配置文件网站页面(html、jsp、servlet、图片文件等)

war包的目录结构一般如下:

根目录

|

|---- .html、.jsp (或包含这两种文件的目录)

|

|---- WEB-INF 目录 // 存放 .class 文件和配置文件

| |

| |---- web.xml // 该应用的配置文件

| |

| |---- classes 目录

| | |

| | |---- 编译好的 servlet 类和 js

| | |

| | |---- servlet 所依赖的其他类(如 JavaBean)

| |----- lib // 存放该包的依赖 jar 包

|

|---- META-INF 目录 // 存放该包和扩展的配置数据

3.tar包

tar包:属于打包文件。Lniux系统上的压缩打包工具,可以将多个文件合并为一个文件,打包后的文件后缀为“tar”。简单说tar就是打包;

4.tar.gz包

tar.gz包:是压缩文件。经过gzip压缩后的tar文件,形成tar.gz包,扩展名为“xx.tar.gz”;