【Maven】——Maven的打包方式

我们新建一个Maven项目时,通常会默认打包方式。例如 <packaging>pom</packaging> ,它们到底是什么意思呢?

 打包类型有pom、jar、war三种。

打包类型 说明
pom 父级项目的打包类型
jar 默认类型,如果没写packaging标签,则默认打成jar包(内部调用或作为服务)
war Web应用程序

pom工程

用在父级工程或聚合工程中。用来做jar包的版本控制。必须指明这个聚合工程的打包方式为pom

现在有这样一个场景,有两个web项目A、B,一个java项目C,它们都需要用到同一个jar包:common.jar。如果分别在三个项目的pom文件中定义各自对common.jar的依赖,那么当common.jar的版本发生变化时,三个项目的pom文件都要改,项目越多要改的地方就越多,很麻烦。这时候就需要用到parent标签, 我们创建一个parent项目,打包类型为pomparent项目中不存放任何代码,只是管理多个项目之间公共的依赖。在parent项目的pom文件中定义对common.jar的依赖,ABC三个子项目中只需要定义,parent标签中写上parent项目的pom坐标就可以引用到common.jar了。

分别对子项目打Jar包的时候会导入项目的jar包。看起来就像本地引用一样。

Packing = pom,

war工程

将会打包成war,发布在服务器上的工程。如网站或服务。在SpringBoot 项目中,只要我们在依赖中添加了web的启动器,我们就不需要添加打包方式了,maven会自动帮助我们 识别这个项目为war工程。不是springBoot项目的话,则需要指明这个项目为一个web工程。

jar工程

将会打包成jar用作jar包使用。在项目中,不指明的话,默认的就是打包成jar工程,我们也可以添加指明打包方式为jar。

posted @ 2022-10-04 19:52  陆陆无为而治者  阅读(2776)  评论(0编辑  收藏  举报