---
title: Maven(1)-初见
date: 2017-10-9 20:18:14
tags:
- maven
categories:
- Java
---
我们在工作中可能会在IDE当中有很多项目
这些项目多数需要引用一些第三方的jar包
但是对于相同类型的项目 , 引用的jar包很可能是重复的
在以往 , 我们需要在每个项目中都拷贝一份这些jar包 , 以保证这些项目可以独立运行 , 这样显然不好
而且对于同一个jar包来说 , 它也会存在不同的版本 , 缺乏统一的管理
对于较为复杂的项目 , 可能会有主项目和若干个子项目 , 他们之间的依赖关系也难以维护
`Maven`就是用来解决项目管理中遇到的这些问题
它引入了`仓库`的概念 , 实现了对jar包的统一管理
#### 安装与配置
1. 解压存放到一个固定的目录当中
然后配置环境变量 , 例如
`MAVEN_HOME=D:/maven-3.3.9`
在PATH当中添加
`%MAVEN_HOME%/bin`
> Mac平台直接修改 .bash_profile文件
在控制台输入`mvn -version`正确显示maven的版本代表配置正确
2. 修改maven目录下conf/setting.xml文件
添加本地仓库位置 , 例如
```xml
/Users/Sookie/Documents/apache-maven-3.3.9/mavenLib
```
3. 在myeclipse/eclipse当中配置maven

点击Add选择到Maven的根目录即可

然后在User Setting里面设置setting.xml文件的根目录( 就是上一步当中修改的setting.xml文件 )
#### 第一个Maven项目
在myeclipse当中新建一个maven项目
结构如下

`src/main/java`用于存放源代码
`src/main/test`用于存放测试代码
`target`目录用于存放编译 打包后的输出文件
这是maven项目的通用约定
如果要引入第三方jar包 , 需要编辑pom.xml文件
> 这里在引入jar包的时候 , 如果本地仓库中没有 , 则会去maven官方的服务器上去下载
> 下载后保存到本地仓库
> 如果官方没有这个jar包 , 也可以自己放进仓库里
这里尝试引入几个jar包
```xml
4.0.0
maven_demo
hello_maven
0.0.1-SNAPSHOT
junit
junit
3.8.2
mongo
mongo-java-driver
3.2.2
mongo
morphia
1.2.3
```
观察本地仓库的目录结构就可以发现 , 从左到右依次是groupId artifactId version

如果要放入自己的jar包 , 按照这个结构去创建目录即可
引入以后 , 刷新项目 , 引入的jar包就会出现在这里

在代码中可以直接使用