Maven是一个跨平台的项目管理工具。基于Java平台的项目构建、依赖管理和项目信息管理。
下载Maven
- 官网下载:https://maven.apache.org/download.cgi
- 关注博主公众号:小凯猿记 回复关键字:Maven
Maven 安装
-
Maven运行环境
Maven是基于Java的一款工具,所以运行Maven时要求配置JDK环境。配置了JAVA_HOME环境变量的可以在cmd命令行中输入以下命令:
-
下载并解压 Maven文件
注意:防止出错,需解压到非中文无空格目录下
-
环境变量配置
和配置Java环境变量一致
- MAVEN_HOME
先添加一个MAVEN_HOME指定maven的安装根目录
系统变量中添加
- 在path中添加MAVEN_HOME
- 测试
使用 命令 【mvn -v】:查看maven版本
初始化修改配置
-
仓库(repository)
Maven能够帮我们自动去网上下载jar包;下载的jar包会保存在一个仓库中(文件夹)。
默认位置是:C盘的用户文件夹下 大概是:c:\Users(用户)\xxx(电脑用户名).m2\repository有些可能会没有找到,这是因为刚从官网下载好的maven,是什么都没有配置的,想要在C盘出现仓库文件夹,运行 【mvn help:system】 命令。
Maven会下载maven-help-plugn,包括pom文件和jar文件。这些文件都被下载到了Maven的本地仓库中。
建议: 不建议将仓库放到默认系统盘,这样以后会占用很多的内存。
- 修改本地仓库位置
找到maven的安装目录,conf文件夹下的setting.xml文件,找到里面被注释的localRepository标签,在下面加上
<localRepository>新建的仓库位置路径</localRepository>
- 修改镜像
下载源修改,默认的是从英国的中央仓库下载,速度会有影响,所以修改为国内镜像;
- 到这里我们的maven就安装配置好了,但是现在直接在cmd中使用maven命令来进行一些操作已经很少见了,大多数会结合现有的编译工具来进行整合Maven
Eclipse整合Maven
eclipse本身自带了一个maven,在 Windows-preferences-maven就可以看到,所以我们需要添加自己下载的Maven。
- 添加本地Maven地址,并勾选,再 apply
- 设置配置文件
- 创建Maven工程,默认使用的是jre1.5(修改如下)
ps:到这一步就可以直接使用eclipse创建Maven工程了
Maven项目结构
- Maven项目工程目录结构
src(源码文件夹。写java代码)
main(保存主程序)
java(保存java代码的地方)
resource(配置文件放在这里)
test(保存测试程序)
java(保存测试java代码的地方)
resource(测试期间配置文件放在这里)
target(自动生成):保存编译后的.class文件等
pom.xml文件(依赖管理,声明我需要哪些包)
- pom.xml文件
<?xml version="1.0" ?>
<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">
<!--pom模型标准版本 -->
<modelVersion>4.0.0</modelVersion>
<!-- groupId -->说明当前项目是哪个公司开发的;公司网址的反转
<groupId>com.xxx.xxx</groupId>
<!-- artifactId -->说明当前是什么模块;项目名;
<artifactId>xxx</artifactId>
<!-- version -->说明当前模块的版本号;
<version>0.0.1-SNAPSHOT</version>
<name>Hello</name> 工程名字
<!-- 指定要引入哪些jar包;
<dependencies>
<!-- 表示导入junit包 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.0</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
jar包的坐标;
- Maven坐标包含三个向量
①groupId:定义当前Maven项目所隶属的项目,通常为公司或组织的域名的倒序+项目名。例如:org.apache.commons
②artifactId:定义实际项目中的一个模块
③version:定义当前项目的当前版本
组织名+模块名+版本号就能定位到一个jar包;
我们需要告诉maven导入的jar包的这些信息;maven就会自动去下载这个jar包(如果没有)