MAVEN
什么是MAVEN
Maven是一个采用纯Java编写的开源项目管理工具, Maven采用了一种被称之为Project Object Model
(POM)概念来管理项目,所有的项目配置信息都被定义在一个叫做POM.xml的文件中
MAVEN是一个基于java的工具,所以第一件事就是安装jdk
- MAVEN是一款跨平台的项目管理工具,使用一个标准的目录结构在不同开发工具中也能实现项目结构的统一
- 自动构建:清理、编译、测试、安装、打包、发布等命令
- 采用pom.xml来导入依赖,自动下载jar包及其依赖包
为什么要学MAVEN
在学习MAVEN之前,我们使用的jar包都非常杂,如下:
之前有想过把这些使用过的jar包整理出来,以便之后直接使用,但万一磁盘坏了,就又得花费大量时间去重新找并整理jar包...
Maven安装
下载MAVEN
官网地址:maven.apache.org/download.ht… ,解压就安装好了
配置环境变量
由于MAVEN是由java编写,因此要使用MAVEN,首先要配置java的环境变量
配置MAVEN
配置path
检测MAVEN是否安装成功,在控制台打上mvn -version或者mvn
mvn
MAVEN目录结构
-
bin:含有mvn运行的脚本
-
boot:含有plexus-classworlds类加载器框架
-
conf:含有settings.xml配置文件
-
lib:含有Maven运行时所需要的java类库
-
Settings.xml 中默认的用户库: ${user.home}/.m2/repository[通过maven下载的jar包都会存储到指定的个人仓库中]
MAVEN配置
MAVEN仓库
MAVEN会为我们添加需要的jar包,首先会在本地仓库中进行查找,然后才到中央仓库(网络上)进行下载,其中本地仓库默认在系统盘下:C:\Users\19245.m2 ,但并不建议将jar包放在系统盘
创建本地仓库
在非系统盘创建一个文件夹作为本地仓库,如:D:\soft\repository
配置仓库
我们上一个步骤只是把本地仓库仓库移动到D盘,但MAVEN配置却没有更新,依然会将jar包默认下载到C盘,所以,我们需要在conf/settings.xml配置文件中修改本地仓库的位置,让之后下载的jar包默认下载到我们创建的本地仓库
- 增加本地仓库配置只想本地仓库目录
<localRepository>D(盘符):/OpenSource(自己设创建仓库的文件夹)/repository</localRepository>
- 在< mirrors>节点下增加远程仓库地址,使用阿里云的MAVEN镜像仓库,不然MAVEN就会直接访问国外的中央仓库,效率极低
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
全局配置jdk1.8
如果有些项目的jdk版本不同,就需要在项目中进行配置,不能使用全局配置
<profile>
<id>jdk-1.8</id>
<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>
创建MAVEN项目
创建过程自己再找视频...,以下是创建好项目的项目结构,其中分成了java和测试两个部分,各自的配置文件都放在resources里面
常用的MAVEN命令
- 需要使用的工具在右侧点击MAVEN
- mvn clean:表示运行清理操作(会默认把target文件夹中的数据清理)。
- mvn clean compile:表示先运行清理之后运行编译,会将代码编译到target文件夹中。
- mvn clean test:运行清理和测试。
- mvn clean package:运行清理和打包。
- mvn clean install:运行清理和安装,会将打好的包安装到本地仓库中,以便其他的项目可以调用。
- mvn clean deploy:运行清理和发布(发布到私服上面)。
上面的命令大部分都是连写的,大家也可以拆分分别执行,这是活的,看个人喜好以及使用需求,Eclipse Run as对maven项目会提供常用的命令。
pom.xml(MAVEN项目的配置)
compiler配置
- 全局配置(已在setting配好)
- 局部配置
eg:
如果设置了全局变量可以将这一段删除,或者项目需要某个jdk版本,可在这个位置进行版本的更改
导包dependencies
导包的过程中已经自动把相关依赖包导入,不需要再找依赖包
- 如下junit4.12的jar包在dependencies中的展现形式
scope域只能往test里面写,一般将它删除
搜索jar包
网址:mvnrepository.com/ , 或者直接搜索maven repository
进入页面直接搜索需要的jar包
尽量选择更多人使用的jar包版本
点击前面的3.x.x版本号进入
然后拷贝对应的jar到自己项目的pom.xml中刷新就导入成功