目录
一、是什么
Maven是apache开源的一款项目管理工具。它在ANT的基础上进行了升级,是一款全新的自动化构建工具。Maven使用项目对象模型(POM-Project Object Model)的概念,可以通过一小段描述信息(坐标)来管理项目的构建。在maven中每一个项目都相当于一个对象,对象与对象之间的关系包括依赖、继承、聚合。
二、有什么好处
在没有maven之前,每开发一个项目都要将jar包拷贝到项目的lib目录,或者在磁盘的制定的位置创建一个lib目录,然后去引用。前者都N个项目用到同样的jar包时,我们需要拷贝N次。后者似乎有点公用的意识,可是针对于不同的版本依然无法区分。这还只是引入jar包这一步。后面的编译打包都需要手动去做。而又了Maven之后,我们只需要有一个公用的本地仓库,然后通过坐标的方式在pom文件中引入的方式就可以使用这个jar包,使jar包得到了最大程度的复用。而且之后的编译打包都是一键操作。大大提高了开发的效率,降低了jar管理的成本,jar冲突这个事从此变成了偶然事件。
三、下载安装
下载地址 http://maven.apache.org/download.cgi
截图如下:
四、怎么用
下载完成以后解压 maven的目录如下:
这几个目录我们重点关注conf/setting.xml,它是Maven的核心配置文件,我们需要在这个文件里配置JDK的版本、仓库的位置(本地仓库、私服、镜像仓库、远程仓库)
五、Maven的仓库
本地仓库:自己设备上的仓库,用来缓存从远程仓库下载的jar包,方便使用。本地仓库的默认位置是${user.home}/.m2/repository ,我们也可以在配置文件中做个性化设置,配置位置如下:
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<!-- 本地仓库配置 -->
<localRepository>具体本地仓库位置</localRepository>
</settings>
远程仓库:非本地仓库的所有仓库的统称,分为本地私服、镜像仓库和中央仓库(中央仓库)下面是远程仓库配置位置:
<mirrors>
<mirror>
<!-- 指定镜像ID(可自己改名) -->
<id>nexus-aliyun</id>
<!-- 匹配中央仓库(阿里云的仓库名称,不可以自己起名,必须这么写)-->
<mirrorOf>central</mirrorOf>
<!-- 指定镜像名称(可自己改名) -->
<name>Nexus aliyun</name>
<!-- 指定镜像路径(镜像地址) 这里配置的是阿里云-->
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
</mirrors>
仓库的优先级:由近到远,本地 -> 私服 -> 镜像仓库 -> 中央仓库
JDK的配置:当我们的ide中有多个jdk的时候,就需要指定你编译和运行的jdk,配置位置如下:
<profile>
<!-- settings.xml中的id不能随便起的 -->
<!-- 告诉maven我们用jdk1.8 -->
<id>jdk-1.8</id>
<!-- 开启JDK的使用 -->
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<!-- 配置编译器信息 -->
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>