Maven中jar,pom,war的区别在哪里

Maven中jar,pom,war的区别是:pom工程用在父级工程或聚合工程中。用来做jar包的版本控制。war工程:将会打包成war,发布在服务器上的工程,如网站或服务。所以service通常打包成war包。jar工程:将会打包成jar用作jar包使用。

Maven中jar,pom,war的区别在哪里-Worktile社区

pom工程

pom工程用在父级工程或聚合工程中。用来做jar包的版本控制。

pom打出来可以作为其他项目的maven依赖,比如你写了两个工程,工程a写了一些工具类,然后你可以把它打成pom,再在工程b里面添加a的依赖,然后你在工程b中就可以使用a定义好的工具类。

Maven是以项目为中心的设计。POM(project object model)是Maven对一个单一项目的描述。没有POM的话,Maven是毫无用处的——POM是Maven的核心。是POM实现的并驱动了这种以模型来描述的构建方式。

war工程

war工程将会打包成war,发布在服务器上的工程,如网站或服务。所以service通常打包成war包。war常用于java web工程,但也不是绝对的,war也可以用java -jar xxx.war执行,前提是你有配置main函数入口

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目录下。

jar工程

jar工程将会打包成jar用作jar包使用。

jar是maven出来之前三方库普遍使用的方式,比较常见的是jdbc驱动包,一般从官网下载下来的都是jar文件。也可以打成可执行文件,类似.exe那样的,用命令java -jar xxx.jar执行。

一个可执行的jar 文件是一个自包含的 Java 应用程序,它存储在特别配置的JAR 文件中,可以由 JVM 直接执行它而无需事先提取文件或者设置类路径。要运行存储在非可执行的 JAR 中的应用程序,必须将它加入到您的类路径中,并用名字调用应用程序的主类。但是使用可执行的 JAR 文件,我们可以不用提取它或者知道主要入口点就可以运行一个应用程序。可执行 JAR 有助于方便发布和执行 Java 应用程序。

延伸阅读:

JAR相关特点

JAR 文件格式提供了许多优势和功能,其中很多是传统的压缩格式如 ZIP 或者 RAR 所没有提供的。它们包括:

安全性 可以对 JAR 文件内容加上数字化签名。这样,能够识别签名的工具就可以有选择地为您授予软件安全特权,这是其他文件做不到的,它还可以检测代码是否被篡改过。

减少下载时间 如果一个 applet 捆绑到一个 JAR 文件中,那么浏览器就可以在一个 HTTP 事务中下载这个 applet 的类文件和相关的资源,而不是对每一个文件打开一个新连接。

压缩 JAR 格式允许您压缩文件以提高存储效率。

传输平台扩展 Java 扩展框架(Java Extensions Framework)提供了向 Java 核心平台添加功能的方法,这些扩展是用 JAR 文件打包的(Java 3D 和 JavaMail 就是由 Sun 开发的扩展例子)。

包密封

存储在 JAR 文件中的包可以选择进行密封,以增强版本一致性和安全性。密封一个包意味着包中的所有类都必须在同一 JAR 文件中找到。

包版本控制

一个 JAR 文件可以包含有关它所包含的文件的数据,如厂商和版本信息。

可移植性

处理 JAR 文件的机制是 Java 平台核心 API 的标准部分。

文章标题:Maven中jar,pom,war的区别在哪里,发布者:小编,转载请注明出处:https://worktile.com/kb/p/38063

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小编小编认证作者
上一篇 2023年2月13日 下午11:03
下一篇 2023年2月13日 下午11:05

相关推荐

  • 云原生应用需要哪些关键组件

    云原生应用需要容器化技术、微服务架构、自动化部署和编排、服务网格、持续交付和持续集成、弹性伸缩和自动化运维、日志和监控、安全和权限管理、配置管理和版本控制、灰度发布和A/B测试等关键组件。详细介绍:1、容器化技术,是云原生应用的核心基础,它将应用程序及其依赖项打包到容器中,使其能够在各种环境中以一致的方式运行;2、微服务架构,云原生应用通常采用微服务架构等等。

    2023年10月27日
    28400
  • 私域流量运营中,如何处理用户反馈和投诉

    在私域流量运营中,妥善处理用户反馈和投诉是提升用户满意度和忠诚度的关键。主体答案即为私域运营者通过一系列策略和措施来优化用户体验。核心观点包括:快速响应、公开透明、情感联结、问题解决和持续改进。通过快速响应用户的问题、以公开透明的态度对待用户投诉、建立情感联结以增强用户的积极感受、确保问题得到有效解…

    2023年11月20日
    28100
  • 里程碑用什么软件制作

    做里程碑可以用以下软件:一、Zoho Projects;二、Tita项目管理;三、Microsoft Project;四、Jira。Zoho Projects是一款带里程碑管理的项目管理软件。通过Zoho Projects 项目任务管理软件将简单项目和复杂项目分解为里程碑、任务列表、任务和子任务,精…

    2023年4月16日
    74100
  • 用什么软件开发一个知识库

    以下软件可以开发一个知识库:一、OneNote;二、Evernote;三、Notion;四、TiddlyWiki;五、DEVONthink。neNote 可以创建多级笔记本、分区、页面和子页面,支持插入图片、音频、视频和文件等多种格式的内容,同时提供了丰富的文本编辑工具和标注工具。 一、OneNot…

    2023年3月19日
    41600
  • 进度计划编制软件有哪些

    进度计划编制软件有:1、广联达斑马进度计划;2、翰文进度计划编制系统;3、品茗智绘进度计划软件;4、施工进度计划表;5、鲁班进度计划;6、筑业进度计划软件。广联达斑马进度计划属于工程建筑的管理软件,能够为大家带来更为高效的网络计划。 1、广联达斑马进度计划 这款软件属于工程建筑的管理软件,能够为大家…

    2023年1月4日
    2.3K00
  • 什么是电商运营

    电商运营(Electronic Commerce Operation,简称ECO),从名字上来看就可以分成两块,分别是电子商务与运营,前者是后者的平台。电商运营是指在电子商务环境中,通过各种方式帮助企业促进销售的过程,它包括市场营销、产品运营、物流运营、技术运营、客服运营等。 一、电商运营是什么 电…

    2023年3月24日
    1.4K00
  • 如何有效管理多代人员的工作团队

    有效管理多代人员的工作团队主要涉及以下几个方面:1、理解不同代人员的价值观和沟通方式;2、创建包容性工作环境;3、提供个性化的激励和支持;4、促进跨代沟通与合作;5、设立公平的评估和晋升体系。在其中,促进跨代沟通与合作是一个关键环节,它涉及到如何通过定期的团队建设活动、合适的沟通工具和开放的沟通氛围…

    2023年8月21日
    36300
  • 项目管理常用的工具和方法有哪些

    项目管理涉及有效的计划和对工作的系统管理,但很多工具可以使项目管理更有效、更高效。 今天为大家分享5大项目管理软件,涉及软件项目管理、通用项目管理,开源项目管理以及国内国外最常用的。 12个实用的管理方法,涉及时间管理、思维创新、团队学习、职业规划,它们在项目管理和人生管理中是通用的。 一、项目管理…

    2022年7月8日
    1.4K10
  • 办公用什么软件

    办公用的软件有:1、Microsoft Word;2、Google Docs;3、Microsoft Excel;4、Google Sheets;5、Microsoft PowerPoint;6、Google Slides。Microsoft Word是最流行的文字处理软件之一,它提供了丰富的功能,…

    2023年2月28日
    34700
  • 业务流程管理系统有哪些功能

    业务流程管理系统的功能有:1、系统管理;2、客户、供应商、产品管理;3、销售管理;4、项目管理;5、财务管理;6、知识库;7、统计分析;8、流程定义。业务流程管理系统通过现代化的工作流软件技术手段,将管理线路规范化、标准化和流程自动化,有效地提高业务运作效率,降低成本,为实现企业的战略目标提供保障。…

    2022年11月16日
    85701

发表回复

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

400-800-1024

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

分享本页
返回顶部