Maven是Apache基金会下一个跨平台的项目管理工具
服务于Java项目的构建、项目信息管理和依赖管理,Maven 项目对象模型(POM),可以通过一小段描述信息来管理项目的构建。
官网地址: https://maven.apache.org/index.html
中央仓库地址: https://mvnrepository.com/
提供帮助管理 构建、文档、报告、依赖、scms、发布、分发的方法。可以方便的编译代码、进行依赖管理、管理二进制库等等。maven的好处在于可以将项目过程规范化、自动化、高效化以及强大的可扩展性利用maven自身及其插件还可以获得代码检查报告、单元测试覆盖率、实现持续集成等等。
最新版本下载地址:http://maven.apache.org/download.cgi
maven3.8.1下载地址:https://archive.apache.org/dist/maven/maven-3/3.8.1/binaries/
这里我选择的是maven 3.8.1版:(本文主要以windows版本为例)
Windows版:apache-maven-3.8.1-bin.zip
Linux版:apache-maven-3.8.1-bin.tar.gz
1、将下载的apache-maven-3.8.1-bin.zip
压缩包解压到自己磁盘指定位置。(建议不要有中文路径名称)
如图所示我的目录位置为:D:\DevelopmentTool\Environment\Maven\apache-maven-3.8.1
2、接下来我们打开D:\DevelopmentTool\Environment\Maven\apache-maven-3.8.1\conf
目录下的 settings.xml
配置文件,这里主要配置本地仓库的目录、JDK和阿里云镜像,其余暂时不配置。
settings.xml配置文件关键配置示例:
<settings xmlns="http://maven.apache.org/SETTINGS/1.2.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.2.0 http://maven.apache.org/xsd/settings-1.2.0.xsd">
<localRepository>D:\DevelopmentTool\Environment\Maven\apache-maven-repositorylocalRepository>
<pluginGroups>pluginGroups>
<proxies>proxies>
<servers>servers>
<mirrors>
<mirror>
<id>aliyunmavenid>
<mirrorOf>*mirrorOf>
<name>阿里云公共仓库name>
<url>https://maven.aliyun.com/repository/publicurl>
mirror>
<mirror>
<id>springid>
<mirrorOf>*mirrorOf>
<name>springname>
<url>https://maven.aliyun.com/repository/springurl>
mirror>
<mirror>
<id>spring-pluginid>
<mirrorOf>*mirrorOf>
<name>spring-pluginname>
<url>https://maven.aliyun.com/repository/spring-pluginurl>
mirror>
<mirror>
<id>maven-default-http-blockerid>
<mirrorOf>external:http:*mirrorOf>
<name>Pseudo repository to mirror external repositories initially using HTTP.name>
<url>http://0.0.0.0/url>
<blocked>trueblocked>
mirror>
mirrors>
<profiles>
<profile>
<id>JDK-1.8id>
<activation>
<activeByDefault>trueactiveByDefault>
<jdk>1.8jdk>
activation>
<properties>
<maven.compiler.source>1.8maven.compiler.source>
<maven.compiler.target>1.8maven.compiler.target>
<maven.compiler.compilerVersion>1.8maven.compiler.compilerVersion>
properties>
profile>
profiles>
settings>
1、鼠标右键点击 “我的电脑”
选择 “属性”
选择 “高级系统设置”
打开 系统属性设置 窗口,点击 “环境变量”
按钮,打开设置窗体界面,这里和 jdk 配置类似,如果没有配置jdk环境变量的需要先配置jdk环境变量.
2、添加 MAVEN_HOME
变量:
变量名: MAVEN_HOME
变量值: D:\DevelopmentTool\Environment\Maven\apache-maven-3.8.1
3、在Path
变量中添加 %MAVEN%\bin
值,添加完毕后点击 “确定” 按钮进行保存。
4、测试配置是否成功,打开 cmd命令,输入mvn -v
回车,如果运行如图所示标识配置成功。O(∩_∩)O~
配置步骤:
1、打开系统设置,在搜索框中输入搜索关键词 Maven
2、如图所示按照红色箭头标识顺序点击Maven
3、配置maven主目录位置 (Maven homedirectory)
4、勾选Override复选框按钮,将默认配置文件进行覆盖,选择我们之前配置的settings.xml文件
5、勾选Override复选框按钮,将默认仓库位置进行覆盖,选择我们之前新创建的仓库目录(apache-maven-repository)
6、点击确定按钮。
在IDEA2020中创建Maven项目
1、点击File 菜单选择 New Project,如图所示在这里项目类型选择Maven,勾选(Create from archetype)复选框,并选择 webapp模板(这里千万不要选错了),点击Next按钮进入下一步。
2、设置项目名称与项目保存的目录位置,点击Next按钮进入下一步。
3、设置maven项目的属性,这里只要确认是否与之前设定的一致即可,如果不同则需要重新设置。点击Finish按钮完成项目创建。
src目录:
/main
/test
/target目录
该目录为Web项目构建工件时所生成的目录,目录中
pom文件定义了一个项目所需要的所有信息
节点 | 含义 |
---|---|
project | POM文件的顶级元素 |
modelVersion | POM模型版本,描述这个POM文件是遵循哪个POM版本 |
groupId | 项目组织的唯一标识,通常由域名倒写,如com.company,对应Java包的结构 |
artifactId | 项目唯一标识,对应项目名称 |
version | artifact(生成物)的版本,如1.0.0-SNAPSHOT、1.0.0-RELEASE,1.0.0表示版本号,SNAPSHOT表示快照版,RELEASE表示发行版 groupId、artifactId、version唯一确定一个artifact |
name | 项目的展现名,在Maven生成的文档中使用 |
url | 项目主页的URL,在Maven生成的文档中使用 |
description | 项目的描述,在Maven生成的文档中使用 |
packaging | 项目的打包方式,一般为 jar 或者 war |
节点 | 含义 |
---|---|
parent | 指定父依赖,类似Java中的继承,当前项目可继承父依赖中配置的依赖和属性 需要指定父依赖的groupId、artifactId、version和relativePath |
dependencies | 定义此项目的依赖关系集,在子节点dependency中添加具体的依赖 |
dependency | dependencies的子节点,配置具体的依赖,需要指定具体依赖的groupId、artifactId、version,以及一些扩展配置 scope:compile、provided、runtime、test、system optional:false / true exclusions + exclusion:屏蔽对指定groupId+artifactId的传递依赖 |
properties | 定义一些常量,可在pom文件的其他地方引用 |
build | 构建选项,描述如何编译和打包项目,具体工作通过plugin完成:maven-clean-plugin、maven-resources-plugin、 maven-compiler-plugin、maven-surefire-plugin、 maven-war-plugin 或 maven-jar-plugin、maven-install-plugin、maven-deploy-plugin |
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.0modelVersion>
<groupId>com.aidengroupId>
<artifactId>education-jspartifactId>
<version>1.0-SNAPSHOTversion>
<packaging>warpackaging>
<name>education-jsp Maven Webappname>
<url>http://www.example.comurl>
<properties>
<project.build.sourceEncoding>UTF-8project.build.sourceEncoding>
<maven.compiler.source>1.7maven.compiler.source>
<maven.compiler.target>1.7maven.compiler.target>
properties>
<dependencies>
<dependency>
<groupId>junitgroupId>
<artifactId>junitartifactId>
<version>4.11version>
<scope>testscope>
dependency>
dependencies>
<build>
<finalName>education-jspfinalName>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-clean-pluginartifactId>
<version>3.1.0version>
plugin>
<plugin>
<artifactId>maven-resources-pluginartifactId>
<version>3.0.2version>
plugin>
<plugin>
<artifactId>maven-compiler-pluginartifactId>
<version>3.8.0version>
plugin>
<plugin>
<artifactId>maven-surefire-pluginartifactId>
<version>2.22.1version>
plugin>
<plugin>
<artifactId>maven-war-pluginartifactId>
<version>3.2.2version>
plugin>
<plugin>
<artifactId>maven-install-pluginartifactId>
<version>2.5.2version>
plugin>
<plugin>
<artifactId>maven-deploy-pluginartifactId>
<version>2.8.2version>
plugin>
plugins>
pluginManagement>
build>
project>
通过菜单View->Tool Windows->Maven,打开Maven操作的界面
功能描述:
本文简单介绍maven的下载与配置,并在idea中实现创建maven项目,细节性的会在后续博文中体现出来。此文适合初学者入门学习。
如果你在安装过程中出现配置错误失败情况,可以尝试降低maven的版本,因idea jdk版本不同适配的maven也会有所差异。
学习讨论群: 617530501