• Java后端 学习路线 笔记汇总表【黑马程序员】
  • 黑马程序员(腾讯微云)Maven基础讲义.pdf
  1. Maven-学习笔记01【基础-Maven基本概念】
  2. Maven-学习笔记02【基础-Maven的安装和仓库种类】
  3. Maven-学习笔记03【基础-Maven标准目录结构和常用命令】
  4. Maven-学习笔记04【基础-Maven生命周期和概念模型图】
  5. Maven-学习笔记05【基础-使用骨架创建Maven的Java工程】
  6. Maven-学习笔记06【基础-Maven工程Servlet实例】

目录

第1节 Maven基本概念

maven概述

什么是Maven?

Maven能解决什么问题?

maven依赖管理的概念

Maven的优势举例

依赖管理

maven一键构建概念


第1节 Maven基本概念

maven概述

什么是Maven?

Maven 的正确发音是[ˈmevən],而不是“马瘟”以及其他什么瘟。Maven 在美国是一个口语化的词语,代表专家、内行的意思。

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

Maven能解决什么问题?

可以用更通俗的方式来说明。我们知道,项目开发不仅仅是写写代码而已,期间会伴随着各种必不可少的事情要做,下面列举几个感受一下:

1、我们需要引用各种 jar 包,尤其是比较大的工程,引用的 jar 包往往有几十个乃至上百个, 每用到一种 jar 包,都需要手动引入工程目录,而且经常遇到各种让人抓狂的 jar 包冲突,版本冲突。

2、我们辛辛苦苦写好了 Java 文件,可是只懂 0 和 1 的白痴电脑却完全读不懂,需要将它编译成二进制字节码。好歹现在这项工作可以由各种集成开发工具帮我们完成,Eclipse、IDEA 等都可以将代码即时编译。当然,如果你嫌生命漫长,何不铺张,也可以用记事本来敲代码,然后用 javac 命令一个个地去编译,逗电脑玩。

3、世界上没有不存在 bug 的代码,计算机喜欢 bug 就和人们总是喜欢美女帅哥一样。为了追求美为了减少 bug,因此写完了代码,我们还要写一些单元测试,然后一个个的运行来检验代码质量。

4、再优雅的代码也是要出来卖的。我们后面还需要把代码与各种配置文件、资源整合到一起,定型打包,如果是 web 项目,还需要将之发布到服务器,供人蹂躏。试想,如果现在有一种工具,可以把你从上面的繁琐工作中解放出来,能帮你构建工程,管理 jar 包,编译代码,还能帮你自动运行单元测试,打包,生成报表,甚至能帮你部署项目,生成 Web 站 点,你会心动吗?Maven 就可以解决上面所提到的这些问题。

maven依赖管理的概念

Maven的优势举例

前面我们通过 Web 阶段项目,要能够将项目运行起来,就必须将该项目所依赖的一些 jar 包添加到 工程中,否则项目就不能运行。试想如果具有相同架构的项目有十个,那么我们就需要将这一份 jar 包复制到十个不同的工程中。我们一起来看一个 CRM项目的工程大小。 使用传统 Web 项目构建的 CRM 项目如下:

原因主要是因为上面的 WEB 程序要运行,我们必须将项目运行所需的 Jar 包复制到工程目录中,从 而导致了工程很大。

同样的项目,如果我们使用 Maven 工程来构建,会发现总体上工程的大小会少很多。如下图:

依赖管理

maven一键构建概念

Maven-学习笔记01【基础-Maven基本概念】相关推荐

  1. maven学习笔记之IDEA+Maven+Jetty运行一个简单的web项目

    maven学习笔记 一.什么是maven Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Life ...

  2. 图神经网络学习笔记-01基础

    图神经网络-01基础-图与图学习 文章目录 图神经网络-01基础-图与图学习 图是什么 图的定义 图的基本表示方法 e.g 图的存储 图的类型和性质 图算法 1. 寻路和图搜索算法 1). 搜索算法 ...

  3. Maven学习笔记-什么是maven?

    1.什么是maven? Maven 翻译为"专家"."内行",是 Apache 下的一个纯 Java 开发的开源项目.基于项目对象模型(缩写:POM)概念,Ma ...

  4. Maven学习笔记(二) :Maven的安装与配置

    在Windows上安装Maven:  1.  首先检查安装JDK 通过命令行运行命令:echo %JAVA_HOME%和java  -version,能够查看当前java的安装文件夹及java的版本号 ...

  5. Maven学习笔记5:Maven属性、profile和资源过滤

    Maven的六类属性 内置属性 主要有两个常用内置属性:${basedir}项目的根目录(包含pom.xml文件的目录),${version}项目版本 POM属性 用户可以使用该属性引用POM文件中对 ...

  6. PHP学习笔记01——基础语法

    1 <!DOCTYPE html> 2 <html> 3 <?php 4 // 1.使用$加变量名来表示变量,php是弱类型语言,不要求在使用变量前声明,第一次赋值时变量 ...

  7. python基础知识笔记简书_Python学习笔记01——基础知识

    Python常用数据类型: 整数(int),浮点数(float),字符串(str) 布尔型(True,False),空值(None) 列表(list):一种有序集合,可以随时添加删除其中的元素. cl ...

  8. 黑马Android76期学习笔记01基础--day07--广播,有、无序广播、特殊广播接受者、样式和主题,this与context的区别、普通对话框,进度条对话框、帧动画

    1.广播Broadcastreceiver 1.定义一个广播接收者(定义一个类并继承BroadcastReceiver) public class OutGoingCallReveiver exten ...

  9. BGP协议学习笔记——BGP基础

    BGP协议学习笔记--BGP基础(BGP概念.BGP报文.BGP状态机.BGP关系建立.BGP路由通告) 说明:本文学习笔记整理自网络.华为公开产品文档.华为公开PPT及部分的自我理解 一.BGP简介 ...

  10. 黑马程序员Maven学习笔记

    前言 这里是黑马程序员Maven学习笔记分享,这是视频链接. 我还有其它前端内容的笔记,有需要可以查看. 文章目录 前言 基础 Maven简介 Maven是什么 Maven的作用 Maven的下载 M ...

最新文章

  1. java导入包大全_eclipse快速导入jar包的相关操作步骤
  2. 三代数据组装软件canu
  3. 查看linux 服务器有多少CPU
  4. matlab中句柄图性对像的设置
  5. 零基础怎么自学Java?自学Java有什么误区?
  6. iPhone 12搭载5nm A14芯片:晶体管数量高达150亿
  7. outlook 让附件在正文中显示 (REF rich リッチ)
  8. XML可扩展语言的发展
  9. 南极沉船_世界上一些神秘的沉船,都成了仿佛被世界遗弃的盛景
  10. mysql 银行卡卡号长度_卡bin查询sql分享
  11. hadoop容错性(详解版)
  12. 2019-3-5 梦
  13. 中国工程院院士倪光南:拥抱开源 与世界协同创新
  14. v5服务器装系统,HIPAA海鲅V5s笔记本一键u盘装系统win10教程
  15. 『Java CVE』CVE-2022-34169: Xalan-J XSLT整数截断漏洞PoC结构再浅析
  16. android项目中使用的服务器上,android 开发中使用okhttp上传文件到服务器
  17. python股票涨停_Python与量化投资-股票复盘工具-2018-02-02
  18. 分布式事务解决方案全解析
  19. 二维火Java实习生面试
  20. 计算物理需要的计算机知识,计算物理学概述.doc

热门文章

  1. java程序中可以有几个构造方法_java中多个构造方法可以相互引用么?
  2. java反多态的代码_Java多态性代码详解
  3. map集合怎么取value值最大的前三_Java之集合(下)
  4. 四十二、开始Vuex的学习:如何在Vue中使用Vuex
  5. 二十一、String、StringBuffer和StringBuilder的区别是什么?
  6. 为什么有时打不开爬取到的图片
  7. keras从入门到放弃(六)多层感知器(神经网络)
  8. 实录 | 平安人寿资深算法工程师张智:人机交互场景下的知识挖掘
  9. NLP Chinese Corpus:大规模中文自然语言处理语料
  10. GAN做图像翻译的一点总结