自动化构建工具——maven学习(三)
11.仓库
①仓库的分类
[1]本地仓库:当前电脑上部署的仓库目录,为当前电脑上所有Maven工程服务
[2]远程仓库
(1)私服:搭建在局域网环境中,为局域网范围内的所有Maven工程服务
(2)中央仓库:架设在Internet上,为全世界所有Maven工程服务
(3)中央仓库镜像:为了分担中央仓库的流量,提升用户访问速度
②仓库中保存的内容:Maven工程
[1]Maven自身所需要的插件
[2]第三方框架或工具的jar包
[3]我们自己开发的Maven工程
12.依赖[初步]
①Maven解析依赖信息时回到本地仓库中查找被依赖的jar包
对于我们自己开发的Maven工程,使用mvn install命令安装后就可以进入仓库。
②依赖的范围
[1]compile范围依赖
对主程序是否有效:有效
对测试程序是否有效:有效
是否参与打包:参与
是否参与部署:参与
典型例子:spring-core
[2]test范围依赖
对主程序是否有效:无效
对测试程序是否有效:有效
是否参与打包:不参与
是否参与部署:不参与
典型例子:junit
[3]provided范围依赖
对主程序是否有效:有效
对测试程序是否有效:有效
是否参与打包:不参与
是否参与部署:不参与
典型例子:servlet-api.jar
13.生命周期
①各个构建环节执行的顺序:不能打乱顺序,必须按照既定的正确顺序来执行。
②Maven的核心程序中定义了抽象的生命周期,生命周期中各个阶段的具体任务是由插件来完成的。
③Maven核心程序为了更好的实现自动化构建,按照这一特点执行生命周期中的各个阶段:不论现在要执行生命周期中的哪一个阶段,都是从这个生命周期最初的位置开始执行。
④插件和目标
[1]生命周期的各个阶段仅仅定义了要执行的任务是什么。
[2]各个阶段和插件的目标是对应的。
[3]相似的目标由特定的插件来完成。
[4]可以将目标看做“调用插件功能的命令”
14.在eclipse中使用Maven
①Maven插件:eclipse内置
②Maven插件的设置
[1]installations:指定Maven核心程序的位置,不建议使用插件自带的Maven程序,而应该使用我们自己解压的那个。
[2]user settings:指定conf/settings.xml的位置,进而获取本地仓库的位置。
③基本操作
[1]创建Maven版的Java工程
[2]创建Maven版的Web工程
[3]执行Maven命令