maven-学习笔记 Nov.25.2020

maven是什么?

Maven, a Yiddish word meaning accumulator of knowledge, began as an attempt to simplify the build processes in the Jakarta Turbine project. There were several projects, each with their own Ant build files, that were all slightly different. JARs were checked into CVS. We wanted a standard way to build the projects, a clear definition of what the project consisted of, an easy way to publish project information, and a way to share JARs across several projects.

The result is a tool that can now be used for building and managing any Java-based project. We hope that we have created something that will make the day-to-day work of Java developers easier and generally help with the comprehension of any Java-based project.

援引maven官方解释

maven生命周期

Maven生命周期
在这里插入图片描述

  1. 清理:将之前编译的项目工程的class文件或者其他文件清理之后,使项目工程重新编译
  2. 编译:javac 将.java -->.class
  3. 测试:保证基本功能可以使用,每个环节基于插件,可以自定义(如Junit
  4. 打包:创建JAR/WAR包如在 pom.xml 中定义提及的包
  5. 校验:验证项目是否正确且所有必须信息是可用的
  6. 部署:拷贝最终的工程包到远程仓库中,以共享给其他开发人员和工程

maven的依赖配置

maven依赖配置

maven的引用流程

maven引用流程

maven私服搭建-nexus

在这里插入图片描述

模板方法设计模式与maven

1.模板设计模式

在模板模式(Template Pattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。这种类型的设计模式属于行为型模式。

详情可借鉴博文:设计模式——模板方法设计模式模板设计模式

与maven联系:在模板方式下,定义一个一个方法之后需要执行,每个具体执行点,就是maven plugins里面的plugin
带尺寸的图片: 与模板方法设计模式的联系
在这里插入图片描述

如果没有定义,则maven有自己的一套实现,每个插件都有自己的maven实现,可以去maven官网

Maven的生命周期交由一个又一个的插件执行对于模板方法来说,重要的是他的流程必须是从上到下依次执行,一套模板定义下来,所有的流程都要被执行。

maven-仓库

  • 一个项目里面通常会引用很多jar包,对于所有引用到的jar包,maven可以统一进行管理,避免jar包不一致的问题。假如新建一个项目,他会先去找本地仓库,如果本地仓库没有,会向上去找远程仓库。

  • 远程仓库分中央仓库:收集java相关方向的jar包,种类齐全(由于是在国外,下载速度较慢),以及国内下载的相关工具jar包所建立的远程仓库,如阿里云

  • 本地私服:也可以搭建项目级的本地私服(私服里面包含一个一个的服务jar包),如果本地私服没有,再按照一定方式得到相关jar包,如访问阿里云的远程仓库,如果再没有,访问中央仓库


本地仓库

在这里插入图片描述

Junit

在这里插入图片描述

Junit官方链接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值