| 失效链接处理 | 
| 
      Maven的学习使用 PDF 下载 
	本站整理下载: 
	相关截图: 
![]() 
	主要内容: 
		1.1 软件是一个工程 
	
		我们在日常生活常能听到工程这个词,像桥梁工程、道路工程、南水北调工程等等。 
	
		工程说简单点就是各个行业的从业人员通过总结规律或者方法,以最短的时间和人力、物力来做出高效可靠 
	
		的东西。我们也就能理解桥梁工程,其实就是人们通过经验的总结和各种研究得出来的、用来修建桥梁时所采用 
	
		的高效的方法,当然这种方法是可复用的。我们将这种作工程的思想应用到软件上,于是就产生了—软件工程。 
	
		软件工程:为了能够实现软件的流水线式生产,在设计和构建软件时能够有一种规范和工程化的方法,人们 
	
		便提出了软件工程概念。 
	
		上面的内容做个日常生活的类比,做道菜就是一个工程。今天心情好,想吃红烧肉,自动动手做: 
	
		1.想买什么猪的那个位置的肉,黑猪肉,土猪肉等,使用冰糖还是绵白糖,用什么牌子的酱油等 
	
		2.到菜市场购买各种原料。 
	
		3.准备材料,洗肉,切块,花椒,大料等 
	
		4.开始做了,肉下锅炖煮,不同时间加入花椒,大料,冰糖,酱油 
	
		5.炖煮一段时间后,看肉是否熟透,尝试口味,是不是咸了等等 
	
		6.做好了,开始吃了 
	
		7.需要刷碗,倒垃圾 
	
		这些工作从头做到尾步骤非常繁琐,每个步骤都是费时费力的。所以才出现净菜,半成品菜,拿回家直接做 
	
		可以了,只做 6,7 步骤就可以 。 
	
		软件开发需要编译代码—>开发人员自己测试代码—>把代码打包—>部署项目到测试服务器—>测试人员测试 
	
		功能—>测试测试出 bug 
	
		开发人员需要修改bug—>开发人员自己测试代码—>把代码打包—>部署项目到测试服务器—>测试人员测试功 
	
		能—>直到符合功能要求。 
	
		上述过程需要重复多次,大型项目中构建项目比较复杂,有很多的配置文件,jar 文件,多个子项目等等。都 
	
		用人力完成费时费力,效率比较低。maven 可以让我们从上面的工作中解脱出来。 
	
		maven 是自动化构建工具。 
	
		1.2 传统项目开发存在的问题 
	
		一个项目做成一个工程,造成工程比较庞大,需要使用多模块来划分项目; 
	
		项目中需要的数量众多的 jar 包,需要手动下载并引入,并且多个项目需要的 jar 包存在重复的问题; 
	
		项目中需要的 jar 包有版本兼容的问题,需要手动解决; 
	
		项目中需要的 jar 包又依赖其它的 jar 包,需要手动解决。 
	
		1.3 Maven 概述 
	
		Maven 是 Apache 软件基金会组织维护的一款自动化构建工具,专注服务于 Java 平台的项目构建和 
	
		依赖管理。Maven 这个单词的本意是:专家,内行。读音是['meɪv(ə)n]或['mevn]。 
	
		Maven 是目前最流行的自动化构建工具,对于生产环境下多框架、多模块整合开发有重要作用,Maven 是一 
	
		款在大型项目开发过程中不可或缺的重要工具。 
	
		Maven 可以整合多个项目之间的引用关系,我们可以根据业务和分层需要任意拆分一个项目; 
	
		Maven 提供规范的管理各个常用 jar 包及其各个版本,并且可以自动下载和引入项目中; 
	
		Maven 可以根据指定版本自动解决 jar 包版本兼容问题; 
	
		Maven 可以把 jar 包所依赖的其它 jar 包自动下载并引入项目。 
	
		类似自动化构建工具还有:Ant, Maven, Gradle。 
	
		构建(build),是面向过程的(从开始到结尾的多个步骤),涉及到多个环节的协同工作。 
	
		构建过程的几个主要环节 
	
		①清理:删除以前的编译结果,为重新编译做好准备。 
	
		②编译:将Java源程序编译为字节码文件。 
	
		③测试:针对项目中的关键点进行测试,确保项目在迭代开发过程中关键点的正确性。 
	
		④报告:在每一次测试后以标准的格式记录和展示测试结果。 
	
		⑤打包:将一个包含诸多文件的工程封装为一个压缩文件用于安装或部署。Java 工程对应 jar 包,Web 
	
		工程对应war包。 
	
		⑥安装:在Maven环境下特指将打包的结果——jar包或war包安装到本地仓库中。 
	
		⑦部署:将打包的结果部署到远程仓库或将war包部署到服务器上运行 
	
		1.4 Maven 核心概念 
	
		Maven能够实现自动化构建是和它的内部原理分不开的,这里我们从 Maven的九个核心概念入手, 
	
		看看Maven是如何实现自动化构建的 
	
		①POM  
	
		②约定的目录结构 
	
		③坐标 
	
		④依赖管理 
	
		⑤仓库管理 
	
		⑥生命周期 
	
		⑦插件和目标 
	
		⑧继承 
	
		⑨聚合 
 | 
    




    
苏公网安备 32061202001004号


    