一、jar简介

JAR(Java Archive,Java 归档文件)是与平台无关的文件格式,它允许将许多文件组合成一个压缩文件。JavaSE程序可以打包成Jar包(J其实可以理解为Java了)。

JAR 文件格式以流行的 ZIP 文件格式为基础。与 ZIP 文件不同的是,JAR 文件不仅用于压缩和发布,而且还用于部署和封装组件插件程序,并可被像编译器和 JVM 这样的工具直接使用。在 JAR 中包含特殊的文件,如 manifests 和部署描述符,用来指示工具如何处理特定的 JAR。

简单来说,jar包就是别人已经写好的一些类,然后对这些类进行打包。可以将这些jar包引入到你的项目中,可以直接使用这些jar包中的类和属性,这些jar包一般放在lib目录下。

二、war简介

war是一个可以直接运行的web模块,通常用于网站,打成包部署到容器中。以Tomcat来说,将war包放置在其\webapps\目录下,然后启动Tomcat,这个包就会自动解压,就相当于发布了。

war包是Sun提出的一种web应用程序格式,与jar类似,是很多文件的压缩包。war包中的文件按照一定目录结构来组织。根据其根目录下包含有html和jsp文件,或者包含有这两种文件的目录,另外还有WEB-INF目录。通常在WEB-INF目录下含有一个web.xml文件和一个classes目录,web.xml是这个应用的配置文件,而classes目录下则包含编译好的servlet类和jsp,或者servlet所依赖的其他类(如JavaBean)。通常这些所依赖的类也可以打包成jar包放在WEB-INF下的lib目录下。

简单来说,war包是JavaWeb程序打的包,war包里面包括写的代码编译成的class文件,依赖的包,配置文件,所有的网站页面,包括html,jsp等等。一个war包可以理解为是一个web项目,里面是项目的所有东西。

三、jar包和war包的区别介绍

1. 文件扩展名不同

jar包扩展名为.jar,war包扩展名为.war。

2. 目的和运作方式不同

jar包是类的归档文件,jar文件格式以流行的zip文件格式为基础。jar文件允许我们打包多个文件,以便将其用作库、插件或任何类型的应用程序。

war包是JavaWeb程序打的包,war包里面包括写的代码编译成的class文件,依赖的包,配置文件,所有的网站页面,包括html,jsp等等。一个war包可以理解为一个web项目,里面是项目的所有东西。

3. 文件的结构不同

jar包里的com里放的就是class文件,配置文件,但是没有静态资源的文件,大多数 JAR 文件包含一个META-INF目录,它用于存储包和扩展的配置数据,如安全性和版本信息。

war包和项目的文件结构保持一致。war包里的WEB-INF里放的class文件和配置文件,META-INF和jar包作用一样,war包里还包含静态资源的文件。

四、启动jar包和war包

1. 窗口方式启动jar或war

缺点:关闭窗口,项目也被关闭

java -jar rest-template-0.0.1-SNAPSHOT.jar

2. 后台启动jar或war

后台启动java包

# 进入jar包目录输入下面命令
# xxx.jar是你的jar包名
# /mydata/logs/spring.log是项目日志路径
nohup java -jar xxx.jar >/mydata/logs/spring.log 2>&1 &

查看jar包进程

ps -ef|grep xxx.jar

关闭进程

kill -9 进程id

3. tomcat启动

...

Spring Boot打包成war与jar的区别及启动方式相关推荐

  1. Spring Boot打包成执行jar后获取classpath下文件异常解决

    Spring boot 打包后 jar文件,IDEA调试时候没什么问题,可是打包成执行jar后发现有异常抛出: class path resource [1.jpg] cannot be resolv ...

  2. spring boot 打包成二进制可以直接执行的jar , 非java -jar 启动方式

    spring 打包成jar后可以直接使用java -jar xxx.jar 直接启动.但是还想进一步简化,直接用./xxx.jar 可以注册成系统命令的方式改如何配置呢,其实很简单. pom.xml ...

  3. Spring Boot 打包分离依赖 JAR 和配置文件

    Spring Boot 打包分离依赖 JAR 和配置文件 2018年07月11日 15:17:09 <span class="read-count">阅读数 6145& ...

  4. eclipse打包成jar_Spring Boot 打包成的可执行 jar ,为什么不能被其他项目依赖?

    前两天被人问到这样一个问题: "松哥,为什么我的 Spring Boot 项目打包成的 jar ,被其他项目依赖之后,总是报找不到类的错误?" 大伙有这样的疑问,就是因为还没搞清楚 ...

  5. spring boot 打包jar,jar没有主目录清单

    (1)spring boot 打包jar   如果有不对的还请指点,知道自己技术部怎么样,第一次写,写的有点乱    理解一下 1.在POM.xml文件下添加如下代码:注意:version.confi ...

  6. Spring Boot 打包不同环境配置与 Shell 脚本部署

    点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 本篇和大家分享的是 Spring Boot 打包并结合 S ...

  7. spring boot 项目打成war包部署到服务器

    这是spring boot学习的第二篇了,在上一篇已经整合了spring boot项目了,如果还有小伙伴没有看得可以先去看第一篇 基础整合spring boot项目 到这里的小伙伴应该都是会整合基本的 ...

  8. 将SpringBoot的项目打包成war文件

    2019独角兽企业重金招聘Python工程师标准>>> 步骤一:修改pox.xml文件 1.首先将pom.xml的 <packaging>jar</packagin ...

  9. SpringBoot之打包成war包部署到tomcat

    SpringBoot打包成war包部署到tomcat 小编花费了九牛二虎之力,总算把SpringBoot项目成功打包成war包,其中不免遇到了一些小状况,特写此文,以便其他小伙伴们不要走我的老路,避免 ...

最新文章

  1. 垂直AI初创企业 VS 横向AI初创企业:不同的产品路线选择
  2. 深度学习核心技术精讲100篇(六十四)-特征选择原理及应用实战案例
  3. 带你学python基础:模块和包
  4. 汉高澳大利亚matrix矩阵计算器
  5. linux,mac,unix 系统下cd 进入有空格的目录或者打开有空格的文件
  6. leetcode-16-最接近的三数之和
  7. dataframe for循环 筛选_Python循环12种超强写法,又快又省内存
  8. 蓝桥杯上Excel地址c语言,C语言求解Excel地址转换问题
  9. 容器编排技术 -- Kubernetes 垃圾收集
  10. html5简历阅读,HTML5 移动简历模板
  11. 服务器系统的功能,服务器操作系统有什么功能
  12. vue 获取安卓原生方法_H5-vue与原生Android、ios交互获取相册图片
  13. Using Beyond Compare with Version Control Systems(ZZ)
  14. AD学习之旅(1)— Altium Designer 16 软件下载与安装
  15. 使用Matlab对大地测量学中的大地坐标和大地空间直角坐标进行相互转换
  16. 精益物流设计毕业论文【Flexsim仿真】
  17. 我从冯·诺依曼计算机体系,追溯到了JVM,一切原来如此
  18. 从懵逼到恍然大悟之Java中RMI的使用
  19. 大学生简历个人优势怎么写? 有吸引力的简历制作要有重点
  20. 如何查看自己的ubuntu系统版本

热门文章

  1. PLC控制电路设计中常用的电气符号和文字符号
  2. 四、【python计算机视觉编程】照相机模型与增强现实
  3. 睿量30W迷你氮化镓,小巧耐用易携带,支持更多充电协议
  4. 深大复试题 计算机专业,2018深圳大学计算机技术考研复试真题
  5. 深圳大学计算机考研难吗,深圳大学(专业学位)计算机技术考研难吗
  6. Java实现细菌觅食算法_细菌觅食算法-python实现
  7. 知识追踪系列之IRT
  8. python弹球游戏双球代码键盘操作_python编写弹球游戏的实现代码
  9. 查询塑料塑胶材料属性参数的网站数据库
  10. 写word文档时计算机的工作原理,写word文档时还没保存电脑就死机如何恢复