【SpringBoot从0到1】pom.xml配置文件

1、基本配置

在pom配置文件中,GAV(groupId,artifactId,version)是必须得

groupId跟artifactId统称为项目坐标,为了保证项目唯一性,查找项目模块时,也是通过这两个ID来查找

groupId

含义:组织标识,定义了项目属于哪个组,风向标,坐标
用途:此名称则是本地仓库中的路径,列如:otowa.user.dao,在M2_REPO目录下,将是: otowa/user/dao目录
命名规范:项目名称,模块,子模块

groupId可以分为多段,例如com.baidu,com.baidu。第一段一般可以写公司的域,第二段一般可以写公司的全称。

artifactId

含义:项目名称也可以说你所模块名称,定义当面Maven项目在组中唯一的ID
用途:例如:user-dao,在M2_REPO目录下,将是:otowa/user/dao/user-dao目录
命名规范:唯一就好

artifactId可以理解为模块名称或者项目名称
例如miniparam、member、order等

version

含义:项目或者模块的版本号
用途:用于记录软件开发的版本
命名规范:1.0.0,即为主版本号+子版本号+阶段版本号

主版本号:当功能模块有较大的变动,比如增加了多个模块或者整体架构发生了变化
子版本号:当功能有一定的增加或者变化,比如修改了一些方法或者逻辑
阶段版本号:一般是修复bug或者一些小的变动,要经常发布修订版
日期版本号:用于记录修改项目的当前日志

扩展:
后面还有:日期版本号+希腊字母版本号
日期版本号用于记录项目修改的当前日期
希腊字母版本号用于记录当前软件处于哪个开发版本,如beta版,dev版等

packaging

项目打包的格式,包括pom、jar、maven-plugin、ejb、war、ear、rar、par
pom:pom是最简单的打包类型,里面没有java代码,也不执行任何代码,只是为了聚合工程或者传递依赖,生命周期:package
->install->depoly

jar:内部调用或者作为服务使用
这种打包方式意味着在maven build时会将这个项目中的所有java文件都进行编译形成.class文件,且按照原来的java文件层级结构放置,最终压缩为一个jar文件。
当我们使用mvn install命令的时候,能够发现在项目中与src文件夹同级新生成了一个target文件夹,这个文件夹内的classes文件夹即为刚才提到的编译后形成的文件夹。如下图所示,这是我自己的项目生成的target文件夹,而最下方的jar文件即为此文件夹的压缩版本。
war:需要部署的项目

maven项目的部署过程
先创建一个maven的web项目,对该项目打包成war包 ,然后部署到tomcat或者resin上,然后对该项目的class文件打包成jar包,放到项目的lib目录下,这样,项目就可以直接在lib下面的该 jar包下的class文件。

1、父pom的packaging必须为:pom
2、子模块的packaging不设置的情况下默认为:jar

2、POM之间的关系,继承、聚合和依赖

maven在

1、通过modules标签来整合编译的顺序,引入依赖是用最短路径原则,例如:a.b.c-》a.b.c.d。路径长度相同时,放前面的先编译,例如a.b.c-》a.b.d,因此一般把更加底层的服务放在更先的位置优先加载
2、子项目可以共用父pom引入的依赖,可以把共用的依赖写到父级配置中,以便统一管理

在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值