什么是Maven。隶属于Apache公司下的一个项目管理和自动化构建工具,基于项目对象模型的概念,即Project Object Model(简称pom),在Maven管理的Java工程中能够看到的pom.xml文件就是项目管理的指挥官,主要就是负责管理各类需要引入的jar包依赖。且Maven主要是为Java的项目构建、依赖管理和项目信息管理起到了巨大的作用,作为立志要在Java做番大事业的工程师怎么能不去了解Apache公司的Maven呢。
一、Maven初识
首先前往官网下载Maven,需要注意的是需要提前在本机提前安装好Java环境。
同样需要设置环境变量:
设置一个M2_HOME,值为Maven安装好之后的主目录。随后在Path变量中,将M2_HOME引入并跟上bin目录,如下图:
检验配置是否生效,打开cmd命令窗口,输入mvn -v,若返回以下信息则说明Maven配置成功。
二、Maven默认配置的修改
找到Maven安装目录下的conf目录,其中有一个settings.xml文件,用记事本打开。
我们需要关注以下两个节点:
- mirror
- localRepository
mirror节点表示下载依赖所使用的仓库地址,若不配置则使用默认地址,在国内的网络环境下网速很难令人满意,所以建议将mirror节点加上,这里我使用了阿里的镜像地址:
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
localRepository节点表示下载到本地的仓库地址,若不指定的话会统一下载到C盘的.m2目录下,时间一久会非常占存储,所以强烈建议修改该节点,例如我在D盘新建一个mvn-repository目录,将这个目录作为本地库目录:
<localRepository>D:\mvn-repository</localRepository>
三、配合IDEA加入Maven
首先打开IDEA中的setting,找到Maven的设置窗口:
注意这里默认使用的是IDEA自带的Maven,所以之前我们本地Maven配置得再好,这里不引入还是不会生效,还是会将C盘作为仓库目录导致占用大量的存储。这里我们首先将Maven的目录选择为本地安装的Maven目录,后面两项需要在后面勾选上Override之后才能支持修改,同样修改为我们刚刚配置的setting.xml文件,指定一下新的仓库目录。设置好之后点击Apply,OK之后,如果你之前的项目已经都下好了依赖,这个时候就会重新开始下载依赖包,因为新设置的仓库里没有下载。而老仓库目录下的依赖包则可以进行删除。
四、pom文件解析
在我们的Maven项目中,pom.xml文件是必不可少的,这就像一本电话地址簿一样,根据这个文件里面的信息可以逐一找到对应的包信息。
第一部分的内容属于项目的描述信息:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.cmower</groupId>
<artifactId>test</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>test</name>
</project>
第二部分可以写一些变量,定义完变量之后可以在后续的文本中使用${axis2.version}来引入:
<properties>
<spring.version>5.1.5.RELEASE</spring.version>
</properties>
第三部分是pom文件的重点,其中就会写入关于依赖包的相关信息:
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
</dependency>
</dependencies>
通过groupId、artifactId以及version这三个节点就能确定所要依赖的jar包,那么我们该如何正确地找到对应的groupId以及artifactId呢,这个时候就要借助MavenRepository 网站来查找,访问地址为:https://mvnrepository.com/
在网页上方的搜索框里输入关键字就能够查找到对应的依赖,例如,我想找关于lombok的相关依赖,则可以直接在搜索框输入lombok,接下来在筛选结果中选择符合一项,一般是第一项,并进行选择版本号信息之后就能够直接呈现可复制结果:
五、总结
以上就是关于Maven的初始以及基本使用,希望能够在工作中为大家提供必要的帮助。
参考资料:
- Maven的安装与配置(配置本地仓库路径)
- 你竟然没用 Maven 构建项目?