maven高级学习

一、idea创建maven项目

1.1、idea中创建maven web项目

1使用骨架archetype选择maven-archetype-webapp
2补充一些骨架中没有的文件夹

1.2、idea中使用tomcat

1集成本地的tomcat:
2tomcat的maven插件(建议):
1)pom.xml引入tomcat插件坐标
2)选中项目,右键->run maven->tomcat7:run

1.3、插件和依赖的区别

依赖:运行时开发时都需要用到的包,在项目打包时需要把这些依赖也打包进项目里。
插件:在项目开发时需要,但是在项目运行时不需要,因此在项目开发完成后不需要把插件打包进项目中。

二、依赖管理

2.1、依赖配置

使用坐标

2.2、依赖传递

  • 直接依赖:在当前项目中通过依赖配置建立的依赖关系
  • 间接依赖:被依赖的资源如果依赖其他资源,当前项目间接依赖其他资源

2.2.1、依赖传递中的冲突问题

依赖的资源出现冲突:按先后顺序
1就近原则
2声明优先:间接依赖是同级,那么看直接依赖谁先声明就用谁
3特殊优先:直接依赖配置了相同的资源,后面的会覆盖前面的

2.2.2、可选依赖

对外隐藏当前所依赖的资源。
中加一个true即可

2.2.3、排除依赖

主动断开依赖的资源,被排除的资源无需指定版本。
在这里插入图片描述

2.2.4、排除依赖和可选依赖的区别

可选依赖:隐藏,不要别人看
排除依赖:断开,我不要

2.3依赖范围

作用范围:

  • 主程序范围有效(main文件夹范围内)
  • 测试范围有效(test文件夹范围内)
  • 是否参与打包(package指令范围内)
    在这里插入图片描述

在这里插入图片描述

2.3.1、依赖范围的传递性

在这里插入图片描述

三、生命周期与插件

3.1、生命周期

生命周期分三套:
clean:清理工作
default:核心工作,如编译、测试、打包、安装等
site:产生报告,发布站点等
在这里插入图片描述

3.2、插件

插件与生命周期对应的阶段绑定,在执行到对应的生命周期时执行对应的插件功能
在这里插入图片描述

四、分模块开发与设计

4.1、分模块开发的意义

  • 将原始模块安装功能拆分成若干个子模块,方便模块间的相互调用,接口分享。
    在这里插入图片描述

4.2、pojo拆分

在这里插入图片描述

4.3、dao的拆分

dao在依赖pojo的时候,需要先把pojo模块使用install命令下载到本地仓库。
在这里插入图片描述

4.4、service的拆分

在这里插入图片描述

4.5、control的拆分

在这里插入图片描述

五、聚合

分模块开发可能会带来多模块构建维护的问题:一个模块更新了,其他模块没跟着更新可能会出错。所以需要一个模块来同时更新所以的模块。
在这里插入图片描述

六、模块继承

两个模块依赖的资源版本不同,可能会出现兼容性的问题,可通过模块继承来解决
继承:实现在子工程中沿用父工程中的配置(注父工程中dependencyManagement定义的依赖,仅定义未使用)

6.1、实现步骤

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.2、继承的资源

在这里插入图片描述

6.3、继承和聚合的比较

在这里插入图片描述

七、属性

父工程中如和spring相关的依赖都是同样的版本,万一某个版本不一样,就可能出错,所以使用属性进行管理。用属性来指定jar包的版本

7.1、属性类别

7.1.1、自定义属性

在这里插入图片描述

7.1.2、内置属性

如${version}可以得到目前项目自己的版本信息
在这里插入图片描述

7.1.3、setting属性

在这里插入图片描述

7.1.4、java系统属性

在这里插入图片描述

7.1.5、环境变量属性

在这里插入图片描述

八、版本管理

在这里插入图片描述
在这里插入图片描述

九、资源配置(了解)

作用:在任意配置文件中(如jdbc.properties)加载pom文件定义的属性
在这里插入图片描述

十、多环境开发配置(了解)

可以适应多种多样的环境
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

十一、跳过测试(了解)

11.1、跳过测试环节的应用场景

在这里插入图片描述

11.2、跳过测试的方式

11.2.1、使用命令跳过测试

在这里插入图片描述

11.2.2、使用界面跳过测试

在这里插入图片描述

11.2.3、使用配置跳过测试

在这里插入图片描述

十二、私服

分模块开发时用于把自己写的项目资源上传私服。中央仓库是有专门人维护的,不允许上传项目资源。

12.1、私服的安装、启动与配置

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

12.2、仓库分类

在这里插入图片描述

在这里插入图片描述

12.3、资源的上传

在这里插入图片描述

12.4、本地仓库访问私服

在这里插入图片描述

在这里插入图片描述

12.5、项目工程访问私服

分模块开发的时候,大家需要上传到私服才能得到对方写的项目资源
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值