admin管理员组文章数量:1598075
目录
一、Maven的来源
二、Maven的核心内容简述
1.配置文件pom.xml:
2.仓库(用来存储资源、包含各种jar包):
3.坐标(Maven中坐标用于描述仓库中资源的位置)
4.Maven的作用:
三、Maven的下载、安装与配置(windows版本)
1.下载与安装
2.配置Maven的环境变量
3.配置Maven的本地仓库(本地仓库就是用来存储jar包的一个文件夹)
4. 配置Maven的镜像远程仓库
四、Maven的常用命令
五、Maven常用远程仓库推荐
一、Maven的来源
Maven是一个包管理工具,在没有它之前,我们做一个Java项目,需要第三方jar包时,我们需有手动去网上下载下来,人后手动加到项目里;操作麻烦,如果人家版本更新了,或者我们的项目需要更新某个模块,导致之前加入的依赖包,又需要重新下载最新版本,重新加入到项目里。操作麻烦;因此当年的程序员大佬们开发了一款项目自动管理工具——Maven。
二、Maven的核心内容简述
Maven是一款服务于Java平台的自动化构建工具。Maven 作为 Java 项目管理工具,它不仅可以用作jar包管理,还有许多的插件,可以支持整个项目的开发、打包、测试及部署等一系列行为。
- Maven本质上是一个项目管理工具,他的理念是:将项目开发和管理的过程抽象成一个模型——项目对象模型(POM)
上图是Maven的工作流程图;图中的一些名词概念如下:
1.配置文件pom.xml:
- pom.xml 是Maven工程中的核心配置文件,其地位相当于web项目中的web.xml配置文件,与项目构建过程相关的一切设置都在这个文件中进行配置。
- Maven在工作时,就是通过pom.xml配置文件中所记录的项目的各种信息,并结合自身的各种插件,来达到对项目进行管理和更新。
2.仓库(用来存储资源、包含各种jar包):
- 本地仓库:自己电脑上存储资源的仓库,同时连接远程仓库,可以从远程仓库上获取资源。
远程仓库:又分为私服和中央仓库
- 私服:一般是公司或部门架设在当前局域网下的仓库,介于本地与中央之间,为当前局域网范围内的所有Maven工程服务(为本地仓库提供jar包)。
-
中央仓库:Maven公司团队所管理的服务器,架设在Internet上,为全世界的所有Maven工程服务,基本上存储着99%的jar包。
-
中央仓库的镜像:架设在各个大洲,为中央仓库分担流量。减轻中央仓库的压力,更快响应用户请求。
3、坐标(Maven中坐标用于描述仓库中资源的位置)
(1)数学中的坐标(x,y,z)可以确定一个点的位置
(2)Maven的坐标:使用下面三个量在仓库中可以唯一定位一个jar包
① groupid:当前Maven项目的域名反过来(包名);例:com.baidu
<groupid>com.baidu.maven_project</groupid>
② artifactid:Maven项目的名称
<artifactid>Hello</artifactid>
③ version:当前项目版本号;(1.0-SNAPSHOT表示项目还没上线的快照版)
<version>1.0-SNAPSHOT</version>
4.Maven的作用:
- 项目构建:Maven为我们提供标准的、跨平台的自动化项目构建方式;
(之前我们创建项目,需要确定项目的目录结构,比如src 存放Java源码, resources存放配置文件,webContent放前端页面,还要配置环境比如JDK的版本等等,如果有多个项目 那么就需要每次自己搞一套配置,十分麻烦。Maven为我们提供了一个标准化的Java项目结构,我们可以通过Maven快速创建一个标准的Java项目.)
- 依赖管理:通过Maven,可以方便快捷的项目依赖的资源(jar包),避免资源的版本冲突问题。
- 统一开发结构:提供了一套标准的、统一的项目结构(自从用了Maven写Java项目,大家都按照它建议的项目结构来写)
三、Maven的下载、安装与配置(windows版本)
1.下载与安装
①首先去Maven官网:Maven – Download Apache Maven
②当前Maven最新版本为3.9.8,下载完后是一个压缩包;Maven是绿色软件,解压及安装;
注意:我们要找一个没有中文没有空格的路径下进行解压安装。例如我的是在D:\Program Files\Maven\apache-maven-3.9.8
③解压完的Maven目录如下:
- bin文件夹:该文件中包含的是mvn的运行脚本,我们在命令行中使用mvn语言实际上就是在调用该文件夹中的脚本,比如mvn -v。这里面的脚本分为mvn和mvn.bat。前者是用在Unix系统,后者是用在windows系统上。
-
boot文件夹:该目录只包含一个文件:plexus-classworlds-XXX.jar。该jar文件是一个类加载器框架,相对于默认的Java类加载器,他提供了更丰富的语法以方便配置。Maven使用这个框架来加载自己的类库。
-
conf文件夹:这里面存放的是Maven的配置文件,其中有一个非常重要的文件是setting.xml,修改这个文件可以对Maven进行全局的修改。(后面会用到)
-
lib文件夹:这里面包含了Maven本身运行时所需要的所有Java类库(jar包)。这里面算是真正的Maven代码,是Maven的核心部分。Maven本身是分模块开发的,所以用户可以看到诸如maven-core-3.1.jar、maven-model-3.1.jar之类的文件。另外,这个文件夹还含有一些Maven用到的第三方依赖。
2.配置Maven的环境变量
①在windows搜索框搜索环境变量 ——>打开编辑系统环境变量——>点击环境变量(N)——>点击新建(N)
③新建一个MAVEN_HOME变量
⑥点击新建后;在输入框中输入%MAVEN_HOME%bin ;表示将刚刚创建的MAVEN_HOME环境变量添加到系统Path下;一定注意前后加上“%”,结尾加上bin(指定到bin目录下)
⑦配置完上面的一切后;最后win+R打开命令窗口:输入mvn -v检查Maven是否安装且配置成功,若出现下图样子,恭喜你,成功安装上了Maven。
3.配置Maven的本地仓库(本地仓库就是用来存储jar包的一个文件夹)
①maven的本地仓库默认是在 C盘 .m2 目录下,但是将本地仓库放在C盘会占用c盘空间,所以这里要重新配置一下.
②打开maven的安装目录中,进入 conf文件夹, 找到 settings.xml 文件, 上文有提到过,这个文件是Maven的一个重要的配置文件,修改这个文件可以对Maven进行全局的修改。
③用你的一个可靠的IDE打开setting文件夹,例如VScode或IDEA,这里我用VScode打开的:
<!-- 配置本地仓库 -->
<localRepository>D:\你自己指定的一个目录</localRepository>
<localRepository>XXXXXX</localRepository>之间XXXXX表示你自己指定的本地仓库的路径(我是在D盘中创建了一个MVN_repository文件夹来当做我的本地仓库)
4. 配置Maven的镜像远程仓库
(若项目所需jar包在本地仓库中没找到,默认从远程仓库中下载)
①由于Maven默认的远程仓库隶属于国外,下载jar包非常的慢,因此我们通常都是用自己国内的镜像远程仓库;这里推荐首选阿里元的远程仓库:
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun/nexus/content/groups/public/</url>
</mirror>
②还是打开setting.xml文件,找到<mirrors>标签,将上述代码复制进去即可;如下图所示:
(到此。恭喜你,Maven的下载与环境配置都已完成🐶)
四、Maven的常用命令
- mvn clean:清理(会删除原来编译和测试的目录,即 target目录,但是已经 install到仓库里的包不会删除)
- mvn compile:编译主程序 (会在当前目录下生成一个 target里边存放编译主程序之后生成的字节码文件)
- mvn test-compile:编译测试程序(会在当前目录下生成一个 target,里边存放编译测试程序之后生成的字节码文件)
- mvn test:执行测试(会生成一个目录 surefire- reports,保存测试结果)
- mvn package:打包主程序(会编译、编译测试、测试、并且按照pom.xml配置把主程序打包生成jar包或者war包
- mvn install:安装主程序(会把本工程打包,并且按照本工程的坐标保存到本地仓库中)
- mvn deploy:部署主程序(会把本工程打包,按照本工程的坐标保存到本地库中,并且还会保存到私服仓库中。还会自动把项目部署到web容器中)
五、Maven常用远程仓库推荐
1.几个常用国外的中央仓库地址
1. http://www.sonatype/nexus/(一款强大的Maven仓库管理网站)
2. http://mvnrepository/ (一款常用的Maven仓库网站)
3. http://repo1.maven/maven2 (Maven官方中央仓库)
2. Maven 镜像仓库地址
①阿里中央仓库(首选推荐)
<repository>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun/nexus/content/groups/public/</url>
</repository>
② camunda 中央仓库
<repository>
<id>activiti-repos2</id>
<name>Activiti Repository 2</name>
<url>https://app.camunda/nexus/content/groups/public</url>
</repository>
③spring.io 中央仓库
<repository>
<id>springsource-repos</id>
<name>SpringSource Repository</name>
<url>http://repo.spring.io/release/</url>
</repository>
④maven.apache 中央仓库
<repository>
<id>central-repos</id>
<name>Central Repository</name>
<url>http://repo.maven.apache/maven2</url>
</repository>
#参考文章:
maven的下载与安装教程(超详细)_maven安装-CSDN博客
Maven是什么?有什么作用?Maven的核心内容简述_maven是干什么用-CSDN博客
Maven学习笔记:Maven源文件的目录结构_maven项目lib包在哪-CSDN博客
版权声明:本文标题:Maven详解(学习、安装、配置)——看这个一篇就够了 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/xitong/1728297247a1152570.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论