(1)可参考博客maven的定义/功能/作用
(2)可参考博客maven介绍
以下只是一些从博客学习的笔记
1.Maven是什么?
Maven是一个项目管理工具,它包含了一个对象模型。一组标准集合,一个依赖管理系统。和用来运行定义在生命周期阶段中插件目标和逻辑。
2.Maven 核心功能
(1)Maven的核心功能是合理叙述项目间的依赖关系,通俗点 就是通过pom.xml文件的配置获取jar包不用手动的去添加jar包,,这个pom.xml包我后面会叙述,不过已经学习过maven的 人应该对这个很熟悉。其本质就是通过配置pom.xml来获取jar包,当然这是在该项目必须是maven项目的前提下。
(2)传统工程我们直按把jar包放置在项目中, Maven工程真正的jar包放置在仓库中,项目中只用放置jar包的坐标。
(3)不使用Maven工具,当做 Java 项目需要第三方依赖包时,将别人打好的 Jar 包下载到本地,然后手动指定给项目。另外,比如版本控制,需要新版本怎么办,重新下载,重新指定,这个过程操作麻烦。而用了 Maven 之后,需要什么包,直接在 pom.xml 中添加几行 xml 代码(添加所依赖jar包的坐标),指定包名、版本等,就可以了,方便开发。
3.Maven中的重要配置文件:pom.xml
(1)含义:Project Object Model项目对象模型。
(2)pom.xml 对于Maven工程是核心配置文件,与构建过程相关的一切设置都在这个文件中进行配置。重要程度相当于web.xml对于动态Web工程。
4、坐标
(1)数学中的坐标:
[1] 在平面中,使用X、Y两个向量可以唯一定位平面中的任何一个点
[2] 在空间中,使用X、Y、Z三个向量可以唯一定位空间中的任何一个点
(2)Maven的坐标:使用下面三个向量在仓库中唯一定位一个Maven工程(jar包)
[1] groupid:公司或组织域名倒序+项目名
com.atguigu.maven
[2] artifactid:模块名
Hello
[3] version:版本
1.0.0
5、Maven的常用命令
(1)执行与构建过程相关的Maven命令,必须进入pom.xml所在目录。与构建过程相关:编译、测试、打包、…
[1] mvn clean:清理(会删除原来编译和测试的目录,即 target目录,但是已经 install到仓库里的包不会删除)
[2] mvn compile:编译主程序 (会在当前目录下生成一个 target里边存放编译主程序之后生成的字节码文件)
[3] mvn test-compile:编译测试程序(会在当前目录下生成一个 target,里边存放编译测试程序之后生成的字节码文件)
[4] mvn test:执行测试(会生成一个目录 surefire- reports,保存测试结果)
[5] mvn package:打包主程序(会编译、编译测试、测试、并且按照pom.xml配置把主程序打包生成jar包或者war包
[6] mvn install:安装主程序(会把本工程打包,并且按照本工程的坐标保存到本地仓库中)
[7] mvn deploy:部署主程序(会把本工程打包,按照本工程的坐标保存到本地库中,并且还会保存到私服仓库中。还会自动把项目部署到web容器中)
6、Maven依赖范围
7.maven帮助我们解决的问题
maven可以帮我们
1)构建工程,
2)管理jar,
3)编译代码,
4)自动运行单元测试,
5)打包
6)生成报表,
7)部署项目,生成web站点。
8. 项目名称
–pom.xml 核心配置,项目根下
–src
–main
–java java源码目录
–resources java配置文件目录
–test
–java 源码测试目录
–resource 测试配置目录