Maven包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。

项目对象模型 (Project Object Model)
一个maven工程都有一个pom.xml文件,通过pom.xml文件定义项目的坐标、项目依赖、项目信息、插件目标等。

依赖管理系统(Dependency Management System)
通过maven的依赖管理对项目所依赖的jar 包进行统一管理。
比如:项目依赖junit4.9,通过在pom.xml中定义junit4.9的依赖即使用junit4.9,如下所示是junit4.9的依赖定义:

<!-- 依赖关系 -->
<dependencies><!-- 此项目运行使用junit,所以此项目依赖junit --><dependency><!-- junit的项目名称 --><groupId>junit</groupId><!-- junit的模块名称 --><artifactId>junit</artifactId><!-- junit版本 --><version>4.9</version><!-- 依赖范围:单元测试时使用junit --><scope>test</scope></dependency>
</dependencies>

一个项目生命周期(Project Lifecycle)
使用maven完成项目的构建,项目构建包括:清理、编译、测试、部署等过程,maven将这些过程规范为一个生命周期,如下所示是生命周期的各各阶段:

maven通过执行一些简单命令即可实现上边生命周期的各各过程,比如执行mvn compile执行编译、执行mvn clean执行清理。

一组标准集合
maven将整个项目管理过程定义一组标准,比如:通过maven构建工程有标准的目录结构,有标准的生命周期阶段、依赖管理有标准的坐标定义等。

插件(plugin)目标(goal)
maven 管理项目生命周期过程都是基于插件完成的。

maven项目概念模型图相关推荐

  1. Maven-学习笔记04【基础-Maven生命周期和概念模型图】

    Java后端 学习路线 笔记汇总表[黑马程序员] 黑马程序员(腾讯微云)Maven基础讲义.pdf Maven-学习笔记01[基础-Maven基本概念] Maven-学习笔记02[基础-Maven的安 ...

  2. andriod studio 查看项目依赖_Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图...

    Maven 组件界面介绍 如上图标注 1 所示,为常用的 Maven 工具栏,其中最常用的有: 第一个按钮:Reimport All Maven Projects 表示根据 pom.xml 重新载入项 ...

  3. Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图

    IntelliJ IDEA使用教程 (总目录篇) Maven 组件界面介绍 如上图标注 1 所示,为常用的 Maven 工具栏,其中最常用的有: 第一个按钮:Reimport All Maven Pr ...

  4. Maven Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图

    原文地址: https://blog.csdn.net/qq_27093465/article/details/69226949 IntelliJ IDEA使用教程 (总目录篇) Maven 组件界面 ...

  5. GitChat · 软件工程 | 一小时教你学会 Maven 项目的构建与管理

    GitChat 作者:梁鹏举 原文: 一小时教你学会 Maven 项目的构建与管理 关注公众号:GitChat 技术杂谈,一本正经的讲技术 Maven翻译成中文是"专家.内行".M ...

  6. MAVEN项目对象模型,原来找Bug也不用如此费时费事。

    解释之前,提个小问题 假如你正在Eclipse下开发两个Java项目,姑且把它们称为A.B,其中A项目中的一些功能依赖于B项目中的某些类,那么如何维系这种依赖关系的呢? 很简单,这不就是跟我们之前写程 ...

  7. Maven实战(三)Eclipse构建Maven项目

    2019独角兽企业重金招聘Python工程师标准>>> 1. 安装m2eclipse插件     要用Eclipse构建Maven项目,我们需要先安装meeclipse插件     ...

  8. Dubbo 在maven项目中的应用

    首先我们来看一下dubbo的架构: 所以通过此图,我们看到就是服务的提供者将服务注册到注册中心,服务的消费者从注册中心获取服务,monitor监控服务的调用. 关于dubbo的使用,我们举个简单的例子 ...

  9. java maven 项目依赖管理 简介

    目录 一.简单的小问题? 二.maven到底是什么? 三.maven的安装 四.仓库的概念 五.使用命令行管理maven项目 六.使用Myeclipse创建maven自定义项目 七.pom.xml的依 ...

最新文章

  1. python基础——继承与派生、组合
  2. 每天一个设计模式,工厂方法模式(Factory Method)
  3. 5.1 代码合并:Merge、Rebase的选择
  4. JS隐形数据类型转换注意事项
  5. VMware OSP对比VMware Tools:简化Linux驱动更新
  6. 非华为电脑安装华为电脑管家11的方法,华为应用商店和华为浏览器电脑版
  7. 计算机中.dll文件检查,在电脑中查看并打开dll文件类型的具体方法
  8. android页面监听扫描枪,GitHub - rorine/BarcodeScannerGunMaster: android 扫码枪 内容读取,与拦截editText消费...
  9. 苏格拉底谈爱情、婚姻、外遇与生活
  10. Android开发技巧——实现底部图标文字的导航栏(已更新)
  11. python爬股票信息_爬取股票信息(股票代码+价格)
  12. [转]一个计算机高手的成长
  13. [分布式控制] (4) 刚性图论基础和仿射编队
  14. Matlab数据统计与分析(四)——参数估计
  15. linux查看riak版本,riak源码阅读手记 压力测试
  16. 联合国 ITU 立项成功,DevOps 标准开启国际化模式!
  17. Java——线程插队_join ()方法来实现“插队功能”
  18. PIE IN THE SKY
  19. Ambari源码二次开发实战课程(持续更新中)
  20. Java paypal如何实现付费订阅(循环扣费)

热门文章

  1. Android-滑动解锁高亮文字自定义TextView
  2. 【Python数据结构】 抽象数据类型 Python类机制和异常
  3. 从面试蚂蚁失败反思-缓存穿透技术
  4. nand ubi -2 ubi管理下的SLC nand
  5. 百度黄埔学院学员开题 | ‘首席 AI 架构师’实战之旅开启!
  6. Linux中的一个命令行计算器bc简介
  7. SQL Server 2016 行级别权限控制
  8. 大数据科学认识与理解论坛全攻略
  9. Atom ctrl+atl+b 快捷键修复
  10. Zabbix server is not running 报错的排查