-

<parent>标签里面,直接把父项目的gav坐标拷贝过来,且增加<relativePath>标签,指定父项目的pom.xml文件
子项目会自动继承父项目的groupId,所以可以把子项目的groupId删掉
<!--父项目的打包方式,只能是pom-->
<packaging>pom</packaging><!--父项目中统一管理的依赖:这里只是一个依赖容器,并不会实际引入进来,只有在子项目中使用的时候才会引入-->
<dependencyManagement>
<dependencies>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>${log4j.version}</version>
</dependency>
</dependencies>
</dependencyManagement>可以在properties里写版本号标签及值,在dependencies里通过${标签}引入
查看全部 -

范围管理
查看全部 -

依赖范围
查看全部 -

通过项目构建骨架。复制mvn.cmd修改为mvn.bat。mvn clean install 安装到本地仓库。
然后在idea里通过gav添加自定义骨架
查看全部 -

下载骨架放到本地仓库
本地仓库\org\apache\maven\archetype\archetype-catalog\3.2.0
重新配置maven来使用本地骨架 maven-runner:-DarchetypeCatalog=local
查看全部 -

maven生命周期
查看全部 -
maven是一个项目构建和管理工具,maven是基于POM.XML项目定向模型的方式来管理项目的构建过程、依赖注入和报表文档,底层通过命令方式实现

mvn tomcat:run 使用meven中内置的tomcat插件来运行项目
mvn test 用来执行test目录中的测试案例, 并生成对应的测试报告文档
mvn site 生成报表数据
mvn dependency:tree 用于查看依赖树的命令
mvn install 用于将我们打包的jar/war包添加到本地仓库中, 方便我们本地的其他项目通过这个项目的`gav`坐标引入使用
mvn deploy 将我们安装在本地仓库中的jar/war包发布到私有服务器或镜像仓库, 方便其他项目远程通过`gav`坐标引入使用. 这条命令我们使用的时候一般向私有服务器发布我们打包的文件
查看全部 -

主版本号(重大功能变动)-小版本号(已有子功能新增或修改)-阶段版本号(BUG修复)-字母版本号(里程碑版本号)
字母版本号:
Alpha -正在开发版本,正在实现功能,是内测版本
Beta-实现基本功能,消除了一些严重错误,还存在bug,是公测版本
RC-候选版本,项目基本成熟,即将发行
Stable、Release、R、GA-正在稳定发行的版本
final-最终版本
查看全部 -

优先级:pom.xml>settings.xmlnote>settings.xml 项目配置>用户配置>全局配置
查看全部 -

本地仓库和远程镜像仓库的配置。Windows的\需要修改为/。
查看全部 -

项目中可以使用远程仓库或者国内镜像仓库;公司项目会搭建私有服务器,同时包含中央仓库依赖,内部项目只需要连接私有仓库下载
查看全部 -

文件结构
bin binary缩写 主要存放二进制可执行文件的文件夹(包含我们主要的操作命名mvn)
boot 存放的是类的加载器 主要加载的是自己的架包repo(用的比较少)
conf config缩写 主要存放Maven配置文件的文件夹lib library缩写 存放Maven自己一些架包的目录
usrlibs 自定义的目录,名字可以随意修改 用于本地仓库来使用的,方便统一管理Maven中的各种依赖
LICENSE,NOTICE,README.txt 都是版本声明和说明文件,对于项目本身的操作意义不是很大
查看全部 -

maven构建的文件结构
查看全部 -
项目中传递依赖冲突:加载多余的依赖
解决:使用exclusions排除多余的依赖
查看全部 -
1、项目依赖冲突:项目依赖的依赖版本不同,通过引入最新版本的依赖,将另外有一个冲突的依赖使用exclusion给删掉,然后重新刷新就可以了;
查看全部
举报