动力节点Maven实战教程,Maven进阶篇之多模块项目管理(maven多模块项目)

在学习Java技术中,maven也是需要大家掌握的,今天来给大家简单介绍一下Maven多模块管理,当然,Maven视频教程中会为大家进行详细的介绍。

Maven是什么?

有很多朋友一直都在项目中用Maven,但是对它并不是很了解。 Maven是一个项目管理工具,它包含了一个项目对象模型 (POM:Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标 (goal)的逻辑。

Maven的主要目标是希望开发人员能在最短的时间内理解开发的完整状态。为了达到这个目标,Maven在下面几个方面做出了努力:简化构建过程、统一构建体系、提供高质量的项目信息、提供开发的最佳实践指南、实现透明的向新特性的迁移、简化构建过程。使用Maven不须要知道一些潜在的或底层的机制,Maven屏蔽了非常多细节。

Maven 除了以程序构建能力为特色之外,还提供 Ant 所缺少的高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目,而使用 Ant 则需要十几行。事实上,由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司项目采用 Maven 的比例在持续增长。

Maven这个单词来自于意第绪语,意为知识的积累,最早在Jakata Turbine项目中它开始被用来试图简化构建过程。当时有很多项目,它们的Ant build文件仅有细微的差别,而JAR文件都由CVS来维护。于是Maven创始者开始了Maven这个项目,该项目的清晰定义包括,一种很方便的发布项目信息的方式,以及一种在多个项目中共享JAR的方式。

Maven能够帮助开发者完成以下工作

  • 构建
  • 文档生成
  • 报告
  • Maven依赖管理
  • SCMs
  • 发布
  • 分发
  • 邮件列表

为什么需要使用Maven的多模块管理模式?

随着项目的不断发展,需求的不断细化与添加,代码越来越多,结构也越来越复杂,这时候就会遇到各种问题

不同方面的代码之间相互耦合,这时候一系统出现问题很难定位到问题的出现原因,即

使定位到问题也很难修正问题,可能在修正问题的时候引入更多的问题。

多方面的代码集中在一个整体结构中,新入的开发者很难对整体项目有直观的感受,增加了新手介入开发的成本,需要有一个熟悉整个项目的开发者维护整个项目的结构(通常在项目较大且开发时间较长时这是很难做到的)。

开发者对自己或者他人负责的代码边界很模糊,这是复杂项目中最容易遇到的,导致的结果就是开发者很容易修改了他人负责的代码且代码负责人还不知道,责任追踪很麻烦。

版本兼容问题等

将一个复杂项目拆分成多个模块是解决上述问题的一个重要方法。 拆分的好处

多模块的划分可以降低代码之间的耦合性(从类级别的耦合提升到jar包级别的耦合)

每个模块都可以是自解释的(通过模块名或者模块文档)

模块还规范了代码边界的划分,开发者很容易通过模块确定自己所负责的内容

大家学习Maven之前,要对Maven的知识点有一些了解,这样才好知道哪些是重点,学习Maven需要掌握以下几点:

1. 掌握Maven的体系结构

2. Maven的整体架构

3. Maven的插件体系

4. Maven的内部运作原理

5. Maven的生命周期

6. 掌握Maven的核心命令

7. clean compile package

8. test install deploy

9. 掌握Maven的POM体系

10. 模块配置 继承配置

11. 属性配置 依赖配置

12. 插件配置 构建配置

13. 仓库配置

动力节点的maven进阶教程,讲解全面,通过maven视频教程的学习,可以让大家快速掌握Java项目构建利器Maven

  • Maven进阶篇视频教程

https://www.bilibili.com/video/BV1kg4y187td

  • Maven进阶资料下载

http://www.bjpowernode.com/?toutiao

课程目录

•001.Maven多模块管理-场景介绍

•002.Maven多模块管理-场景介绍

•003.Maven多模块管理-第1种方式-创建父工程

•004.Maven多模块管理-第1种方式-介绍pom文件

•005.Maven多模块管理-第1种方式-创建maven java子工程

•006.Maven多模块管理-第1种方式-创建maven web子工程

•007.Maven多模块管理-第1种方式-修改子工程为父工程

•008.Maven多模块管理-第1种方式-手动修改Maven工程为子工程

•009.Maven多模块管理-第1种方式-子模块继承父工程所有依赖

•010.Maven多模块管理-第1种方式-父工程管理依赖

•011.Maven多模块管理-第1种方式-子工程声明式继承父工程依赖

•012.Maven多模块管理-第1种方式-父工程管理依赖版本号

•013.Maven多模块管理-回顾第1种实现方式

•014.Maven多模块管理-第2种方式-创建父工程

•015.Maven多模块管理-第2种方式-创建子工程

•016.Maven多模块管理-第2种方式-创建子工程的子工程

•017.Maven多模块管理-第2种方式-父工程管理依赖

•018.Maven多模块管理-第2种方式-父工程管理依赖的版本号

•019.Maven多模块管理-第2种方式-子工程继承父工程编译插件

•020.Maven多模块管理-第3种方式

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2022年5月28日 上午9:40
下一篇 2022年5月28日 上午9:41

相关推荐

  • 科研项目基金照片

    科研项目基金照片 科研项目基金是支持科学家进行科学研究的重要资源。它们通常由政府机构,私人企业和基金会提供,用于资助特定的研究项目。这些基金提供了资金,实验室设备和人员支持,帮助科…

    科研百科 2025年2月3日
    0
  • 信息系统项目管理师有含金量吗

    信息系统项目管理师是一种拥有高度专业化技能的证书,可以提高个人的职业发展和薪资待遇。随着信息技术的快速发展,信息系统项目管理师的需求也越来越大。那么,信息系统项目管理师的含金量是什…

    科研百科 2024年9月23日
    29
  • 付旭的科研项目有哪些

    付旭教授的科研项目有哪些 付旭教授是清华大学计算机系的一名教授,也是清华大学计算机系人工智能研究院的院长。他从事人工智能领域的研究,取得了许多重要的成果。 付旭教授的科研项目包括:…

    科研百科 2025年4月22日
    0
  • 项目管理要点

    项目管理要点 项目管理是组织实现目标的重要方式之一。在项目管理中,要点是非常重要的,可以帮助项目团队有效地完成任务。以下是项目管理中的一些要点: 1. 确定项目目标:在开始项目之前…

    科研百科 2024年7月12日
    60
  • 项目变更管理(项目变更管理流程和方法)

    项目变更的概念和原则 项目变更的基本概念 项目变更管理:是指在信息系统工程建设项目的实施过程中,由于项目环境或者其他的原因而对项目的功能、性能、架构、技术指标、集成方法、项目进度等…

    2022年5月27日
    396
  • 金融中心科研项目名称

    金融中心科研项目名称: \”金融中心的运营与可持续发展\” 摘要: 随着全球金融中心的迅速发展,如何确保它们的可持续发展成为一个日益重要的议题。本研究旨在探…

    科研百科 2025年6月1日
    1
  • 公共图书馆科研项目

    公共图书馆科研项目 公共图书馆作为社会福利机构,一直发挥着重要的作用。然而,随着科技的不断发展,公共图书馆的服务项目也在不断增加。最近,公共图书馆开始了一项新的科研项目,旨在通过数…

    科研百科 2025年4月24日
    1
  • 广东省博士后科研项目

    广东省博士后科研项目 近年来,广东省博士后科研流动站的建设和发展取得了显著的成果。为了更好地促进博士后科研工作的发展,我们推出了一项广东省博士后科研项目,旨在推动博士后科研的创新和…

    科研百科 2025年4月28日
    0
  • 纵向科研项目有哪些

    纵向科研项目有哪些 纵向科研项目是指研究同一主题或领域在不同时间或不同地点进行探索和研究的项目。这些项目通常涉及多个阶段,包括概念设计,实验开发,数据分析和结果解释等。纵向科研项目…

    科研百科 2025年3月8日
    1
  • 好用的进度计划编制软件

    好用的进度计划编制软件 进度计划编制软件是一种能够协助我们编制、跟踪和更新进度计划的工具。在现代项目管理中,进度计划是一个非常重要的组成部分,可以帮助我们确保项目按时完成,并符合预…

    科研百科 2024年8月27日
    38