Maven学习

本篇博文目录:

        • 1.项目中的痛点
        • 2.Maven概述
        • 3.核心特性
        • 4.Maven工程结构
        • 5.Maven依赖管理
        • 6.本地仓库和远程仓库
        • 7.Maven的生命周期

1.项目中的痛点

Maven学习_第1张图片

2.Maven概述

Maven学习_第2张图片

Maven的安装与配置: 来源于CSDN-Maven的安装与配置

3.核心特性

Maven学习_第3张图片

4.Maven工程结构

Maven学习_第4张图片

实例练习:创建一个Maven项目:

Maven学习_第5张图片
Maven学习_第6张图片

相关版本(Version):

  • RELEASE:发布版

  • SNAPSHOT:镜像版本

  • ALPHA:内部测试版本

  • BETA:公开测试版本

在pom.xml中增加相关配置导入自己所需依赖
Maven学习_第7张图片

(要导入的依赖都放在dependencies中,如下导入mysql依赖,其中groupId,artifactId,version就是Maven的坐标)

<dependencies>
    <dependency>
        <groupId>mysqlgroupId>
        <artifactId>mysql-connector-javaartifactId>
        <version>8.0.19version>
    dependency>
dependencies>

默认情况下依赖都是从Apache的仓库中进行下载,因为该仓库位于国外,所以下载比较慢,我们可以考虑使用国内仓库(通过镜像进行下载),下面使用阿里云仓库导入依赖:

访问阿里云仓库,复制public的仓库地址

阿里云仓库:https://developer.aliyun.com/mvn/guide

Maven学习_第8张图片
Maven学习_第9张图片

在pom.xml中添加如下代码,就会首选使用阿里云仓库(镜像)进行依赖导入:

Maven学习_第10张图片

<repositories>
    <repository>
        <id>aliyunid>
        <name>aliyunname>
        <url>https://maven.aliyun.com/repository/publicurl>
    repository>
repositories>

上面这种方式每次都需要编写过于繁琐,我可以通过settings.xml进行设置:

(settings.xml文件默认位于C:\Users\Administrator.m2\settings.xml下,但是由于我移动了该文件,该文件就位于我的安装路径下)
Maven学习_第11张图片

在settings.xml中添加配置内容如下:

<!-- 阿里云仓库 -->
 <mirrors>
	 <mirror>
			<id>nexus-aliyun</id>
			<mirrorOf>*</mirrorOf>
			<name>Nexus aliyun</name>
			<url>http://maven.aliyun.com/nexus/content/groups/public</url>
	</mirror>
</mirrors>

Maven学习_第12张图片
如果你修改了该文件的位置,相应的Maven的User settings file路径也需要修改

Maven学习_第13张图片

5.Maven依赖管理

Maven学习_第14张图片

查询相应依赖网址,可以查询到相应Maven坐标:
https://mvnrepository.com/
Maven学习_第15张图片
https://search.maven.org/
在search.maven.org官网搜索依赖:
Maven学习_第16张图片

Maven学习_第17张图片
Maven学习_第18张图片

刷新一下,即可导入:

Maven学习_第19张图片

IDEA下方就开始下载该依赖的相关文件:
在这里插入图片描述

导入成功:

Maven学习_第20张图片

Maven学习_第21张图片

6.本地仓库和远程仓库

Maven并不是每次都从远程仓库中进行导入,maven会加载pom.xml文件,并从该文件中获取需要导入的依赖,先从本地仓库进行查找,如果没有再从中央仓库中进行下载,下载之后本地仓库中就有了该依赖,下次再次导入该依赖,就直接从本地仓库导入即可。

Maven学习_第22张图片

查询本地仓库地址:

File —> Settings…

Maven学习_第23张图片

Maven学习_第24张图片

进入到该本地仓库中,我们会发现有很多依赖:

在这里插入图片描述

当然我们也可以把该仓库移动到其他盘(D盘):

将C盘中的Maven路径的settings.xml移动到D盘(我放在Maven的安装目录下),然后创建一个maven-repo文件,并把原来maevn中的文件剪切过来(这样下次就无需再下载已经下载过的文件了)
Maven学习_第25张图片

修改setting.xml的localRepository配置信息,修改为上面新建的maven-repo文件路径

Maven学习_第26张图片

在IDEA中修改Maven的配置:

Maven学习_第27张图片

7.Maven的生命周期

Maven学习_第28张图片

使用的最多命令test,package,install(其他的大多数IDEA帮忙我们完成)
Maven学习_第29张图片
实例练习通过命令的方式构建Maven项目:
Maven学习_第30张图片
Maven学习_第31张图片
Maven学习_第32张图片

Maven学习_第33张图片
Maven学习_第34张图片
Maven学习_第35张图片
Maven学习_第36张图片
Maven学习_第37张图片
Maven学习_第38张图片
其他相关命令练习:

  • mvn validate进行验证

Maven学习_第39张图片

  • mvn test进行测试

Maven学习_第40张图片
其实运行的就是AppTest里的方法
Maven学习_第41张图片
再次执行mvn test:
Maven学习_第42张图片

  • mvn compile编译源代码

Maven学习_第43张图片
编译后会生成一个target文件
Maven学习_第44张图片

  • mvn package项目打包(在打包的时候会执行Maven的生命周期一系列的命令)

(打包完成后会生成一个Jar包 D:\java\maven\hellomaven\target\hellomaven-1.0.0-RELEASE.jar )
Maven学习_第45张图片

  • mvn install自己的maven也可以作为组件给其他人使用

Maven学习_第46张图片
在这里插入图片描述
执行完后本地仓库就有了该依赖
在这里插入图片描述

你可能感兴趣的:(工具,maven,Java,maven)