war包和jar包区别是什么

war包和jar包区别在于以下几个方面:1、war是一个baiweb模块,其中需要包括WEB-INF,是可以du直接运行zhi的WEB模块;jar一般只是包括一dao些class文件,在声明了Main_class之后是可以用java命令运行的。

一、区别

1、war是一个baiweb模块,其中需要包括WEB-INF,是可以du直接运行zhi的WEB模块;jar一般只是包括一dao些class文件,在声明了Main_class之后是可以用java命令运行的。

2、war包是做好一个web应用后,通常是网站,打成包部署到容器中;jar包通常是开发时要引用通用类,打成包便于存放管理。

JavaSE程序可以打包成Jar包(J其实可以理解为Java了),而JavaWeb程序可以打包成war包(w其实可以理解为Web了)。然后把war发布到Tomcat的webapps目录下,Tomcat会在启动时自动解压war包。

二、什么是 jar 包

jar 包全称 Java Archive ,中文名叫 java 归档文件,这是一种与平台无关的文件格式,它允许将许多文件组合成一个压缩文件(是的,jar 包就是一种压缩文件,甚至 jar 这个单词就有罐子的意思,实际上 jar 包采用的也是 zip 的压缩方式,只不过将文件后缀定义为 jar)。javaSE 程序可以打包成 jar 包。

jar 包虽然使用 zip 进行压缩和发布,但与 zip 压缩不同,jar 文件还可以用来部署和封装库,组件和插件程序,而且这样的 jar 包是可以直接被编译器和 JVM 直接使用的。

简单的讲,zip 只是将代码文件压缩,打 jar 包不仅是文件压缩,还将代码中的类进行打包,这样就可以让别人直接进行引入调用了。

三、什么是 war 包

war 包与 jar 包是很类似的,不过 war 包通常用于网站,它是一个可以直接运行的 web 模块。我们在开发 web 项目一般都会使用一个 webapp 文件夹来进行开发,这个文件夹直接放在 Tomcat 的 webapps 文件夹下就可以启动该项目了。而 war 包,就是对这个文件夹进行打包。

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 包

war 包的打包也是通过 jar 命令来实现的。使用如下命令即可打包

jar cvf d:/test/myweb2.war.

  • 其中​cvf​是命令参数,表示生成一个文档、显示生成过程、指定生成的文件名。
  • d:/test/myweb2.war​ 为生成的文档的存放路径以及文件名。
  • 最后一个点号表示要将当前目录中所有内容打包。

使用一些开发工具也可以打 war 包,比如 maven 项目就可以用 maven 打包。如果项目中用到了 ant,也可以用 ant 进行 war 包的输出和部署。类似的工具还有 gradle 等等,小编就不一一介绍了。

使用 IDE 一般都会提供打包工具,它们可以简单的打好一个 war 包(关注 W3C技术头条,后续文章教你如何用 idea 和 eclipse 打 war 包)。

文章标题:war包和jar包区别是什么,发布者:小编,转载请注明出处:https://worktile.com/kb/p/39139

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小编小编站长
上一篇 2023年2月21日 下午5:37
下一篇 2023年2月21日 下午5:52

相关推荐

  • 如何在团队中建立高效的沟通机制

    在团队中建立高效的沟通机制至关重要,因为它对提高团队协作和工作效率有着直接影响。本文主要探讨了1、明确沟通目标、2、建立常规沟通渠道、3、优化沟通流程、4、使用有效的沟通工具、5、培养良好的沟通文化等五个核心观点来建立高效的团队沟通机制。通过这些措施能够确保信息的准确传递,提升团队成员之间的互相理解…

    2023年11月28日
    2300
  • 数字化转型对企业有什么好处?

    数字化转型是现代企业所关注的重要议题,但传统的解决方案可能无法满足市场需求,无法迅速提供灵活的结果。为此,低代码应用程序开发平台(LCAP)应运而生。低代码平台提供了可视化的开发环境,让用户可以敏捷地构建自定义的应用程序,而无需编写复杂的代码。

    2023年7月29日
    10800
  • 软件是怎么开发的

    软件开发包含以下阶段:一、软件开发的可行性和规划阶段;二、分析客户需求阶段;三、软件的设计阶段;四、实现阶段;五、测试阶段;六、操作以及维护阶段。软件开发方案第一要做的工作就是对其可行性进行落实,要弄清楚开发这套软件的目标以及整体的要求。 一、软件开发的可行性和规划阶段 软件开发方案第一要做的工作就…

    2023年3月31日
    6400
  • 测试用例编写工具有哪些

    写测试用例编的工具有:一、PingCode;二、TestRail;三、Jira;四、PractiTest;五、Kualitee;六、Zephyr Enterprise。PingCode 是国内的一站式软件研发项目管理工具,在2021年曾被36氪评为国内研发项目管理工具较好1。被广泛用于需求管理、敏捷…

    2023年3月31日
    47600
  • 项目计划表哪个软件好

    项目计划表软件有:一、甘特图;二、PERT图;三、日历;四、时间线;五、WBS图;六、思维导图;七、状态表。甘特图有助于计划和管理项目,它把一个大型项目划分为几个小部分,并有条理地展示。每个任务都有预期完成时间,由水平的条形代表,左端代表开始日期。 一、甘特图 甘特图有助于计划和管理项目,它把一个大…

    2023年4月29日
    6700
  • 如何进行网站的页面内链接优化

    进行网站的页面内链接优化主要分为:一、理解内部链接的重要性;二、制定内部链接策略;三、执行内部链接优化;四、监测和优化。进行网站的页面内链接优化是一个持续的过程,需要不断地监测、分析和调整。通过制定明确的内部链接策略,优化网站结构,以及提供有价值的内部链接,可以改善网站的可读性、可访问性和搜索引擎排名,同时提供更好的用户体验。

    2023年11月11日
    2500
  • 什么是工业APP

    工业APP是为了解决特定问题、满足特定需要而将工业领域的各种流程、方法等工业技术要素,通过数据建模与分析、结构化整理、系统性抽象提炼,并基于统一的标准,将这些工业技术要素封装固化后所形成的一种可高效重用和广泛传播的工业应用程序。 一、什么是工业APP 工业APP是为了解决特定问题、满足特定需要而将工…

    2023年5月10日
    16300
  • 物理机、虚拟机、容器的区别是什么

    物理机、虚拟机、容器的区别是:物理机对应采购的服务器设备,又叫裸设备。虚拟机与现在流行的“云计算”的概念的有着紧密联系,虚拟机的概念在IaaS层,即基础设施即服务部分,容器,也是虚拟层的概念,相对虚拟机而言,容器更加轻量级。

    2023年2月13日
    28600
  • 提问:企业怎么选择低代码开发平台?

    企业如何利用好低代码开发平台为企业赋能?先要选择一款好用的低代码开发平台。但是,市面上的产品这么多,我们应该从哪几个方面进行选择呢?

    2023年7月6日
    8100
  • 国外it运维监控系统有哪些

    国外it运维监控系统有:1、Zabbix;2、Nagios;3、Cacti;4、GroundWork Monitor Core;5、Hyperic;6、Observium;7、NetDisco;8、RANCID;9、Big Brother BTF;10、Icinga。Zabbix是企业级的网络监控工…

    2023年1月15日
    51000

发表回复

登录后才能评论
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部