Maven基础知识以及使用方法
1 Maven介绍
Maven是一个项目工具,它包含了一个项目对象模型(POM:Project Object Model),一组标准集合,一个项目生命周期,一个依赖管理系统,和一个用来运行定义在生命周期阶段中插件目标的逻辑。
简单来说,Maven可以解决以下事情:
- 1 把所有jar包放到仓库中,解决jar包冲突问题以及节约资源。
- 2 有一套完整的生命周期,方便编译,运行,打包等一系列全家桶操作。
2 Maven的作用
2.1 Maven的依赖管理
Maven的一个核心特性就是依赖管理。简而言之,就是管理jar包的过程,Maven工程中不直接将jar包导入到工程中,而是通过pom.xml文件中添加所需要jar包的坐标,再通过pom.xml文件中坐标,到一个专门存放jar包的仓库(maven仓库)中根据坐标从而找到这些jar包,再把这些jar包拿去运行。
2.2 项目的一键构建
一个项目往往需要编译、测试、运行、打包、安装、部署等一系列过程。什么是构建?项目从编译、测试、运行、打包、安装,部署整个过程都交给maven进行管理,这个过程就叫做构建。一键构建指的是整个构建过程,使用maven一个命令就可以完成整个工作。
Maven规范化构建流程:
3 Maven的使用
3.1 下载安装
进入网址:http://maven.apache.org/download.cgi选择下面红框下载解压到一个没用空格和中文的路径下即可(如D:/software/maven)。
文件结构:
- bin:存放了Maven的命令,如mvn tomcat:run
- boot:存放一些Maven本身的引导程序,如类加载器等
- conf:存放了Maven的一些配置文件,如setting.xml文件
- lib:存放了Maven本身运行所需要的一些jar包
3.2 环境配置
3.2.1 新建系统变量
至此,Maven的安装和配置完成,在命令框输入mvn -v出现以下提示则表示安装成功。
3.2 Maven仓库
3.2.1 Maven仓库的分类
maven工作需要从仓库下载一些jar包,如下图:本地项目A、B都会通过maven软件从远程仓库(互联网上的仓库)下载jar包并存到本地仓库,本地仓库就是本地文件夹,当第二次需要此jar包则不需要从远程仓库中下载,直接从本地仓库中调用即可。
-
本地仓库:用来存储从远程仓库或中央仓库下载的插件和jar包,项目使用的插件或jar包,优先从本地仓库中查找。
默认本地仓库位置为 u s e r . d i r / . m 2 / r e p o s i t o r y , {user.dir}/.m2/repository, user.dir/.m2/repository,{user.dir}表示windows用户目录。
-
远程仓库:如果本地没有所需要的插件或jar包,默认去远程仓库下载。
-
中央仓库:在maven软件中内置了一个远程仓库地址http://repo1.maven.org/maven2 ,它是中央仓库,服务于整个互联网,它是由Maven团队自己维护,里面存储了非常全的jar包,它包含了世界上大部分流行的开源项目构件。
3.2.2 Maven本地仓库的配置
为了避免刚开始就从远程仓库中下载jar包的漫长等待。我们可以提前准备好一些常用的jar包放到本地仓库中(相关jar包关注公众号:Coder小菜鸟回复maven获得)。
将下载的rar文件解压缩到自己的电脑上
然后修改安装目录里的conf的setting.xml文件配置:
3.3 小例子
3.3.1 Maven工程的目录结构
- src/main/java —— 存放项目的.java文件
- src/main/resources —— 存放项目资源文件,如spring, hibernate配置文件
- src/test/java —— 存放所有单元测试.java文件,如JUnit测试类
- src/test/resources —— 测试资源文件
- target —— 项目输出位置,编译后的class文件会输出到此目录
- pom.xml——maven项目核心配置文件
3.3.2 Maven工程的运行
使用idea进行运行需要一些必要的配置
-
idea的maven配置
- 1 点击File->Settings配置maven如下:
- 2 运行(需要注意要在pom.xml中指定tomcat)
双击tomcat7:run即可运行。
3.3.3 补充
我们的项目往往需要断点调试,那么就需要做如下设置: