【安装指南】maven下载、安装与配置详细教程

🌼一、概述

maven功能与python的pip类似。

Apache Maven是一个用于软件项目管理和构建的强大工具。它是基于项目对象模型的,用于描述项目的构建配置和依赖关系。以下是一些关键的 Maven 特性和概念:

  1. POM(Project Object Model): Maven项目通过一个XML文件,通常称为pom.xml,来描述项目的元数据和配置信息。POM包含项目的基本信息、构建配置、依赖关系等。

  2. 依赖管理: Maven简化了项目的依赖管理。通过在pom.xml文件中声明依赖关系,Maven会自动下载所需的库并添加到项目构建路径中。

  3. **生命周期和插件:**Maven定义了一组构建生命周期(Build Lifecycle),包括清理、编译、测试、打包、部署等阶段。每个生命周期包含一组阶段,而插件则用于执行这些阶段的任务。

  4. **仓库(Repository):**Maven使用本地和远程仓库来存储和获取构建所需的依赖。本地仓库存储在开发者本地机器上,而远程仓库通常是中央仓库(Central Repository)或其他自定义仓库。

  5. **中央仓库:**Maven的中央仓库是一个集中的、可公共访问的仓库,包含了大量的开源Java库和工具。Maven会自动从中央仓库下载依赖。

  6. **插件体系结构:**Maven的插件体系结构允许开发者扩展和定制构建过程。插件可以提供额外的目标和任务,以满足特定项目的需求。

  7. 多模块项目: Maven支持多模块项目,允许将大型项目划分为若干个模块,每个模块都有自己的pom.xml文件。这种结构有助于组织和管理复杂的项目。

  8. **约定优于配置:**Maven遵循"约定优于配置"的原则,通过定义一些默认的规则和标准目录结构,简化了项目的配置。这意味着,如果项目结构符合约定,很多配置可以省略。

总体而言,Maven是一个广泛使用的构建工具,它提供了一种简单的方式来管理项目的构建、依赖和发布。通过采用约定优于配置的理念,Maven使得项目构建过程更加标准化和易于维护。


🍀二、下载maven

**maven官网:**Maven -- Download Apache Maven Windows下载apache-maven-3.9.5-bin.zip

资源获取:关注文末公众号回复 apache-maven-3.6.3


🌷三、解压maven

比如我将其存放在C:\Program Files\Java\maven


🍁四、配置maven

a 配置环境变量

打开环境变量,新建系统变量,设置如下:

在系统变量的Path路径下加入

检查是否配置完成

打开终端输入

复制代码
mvn -v

显示这样说明配置成功!

b 配置镜像【可选,为了下载更快】

打开setting.xml

找到内容

将原来的内容修改成

复制代码
<mirrors>
    <mirror>
        <id>nexus-aliyun</id>
        <mirrorOf>central</mirrorOf>
        <name>Nexus-aliyun</name>
        <url>https://maven.aliyun.com/nexus/content/groups/public</url>
    </mirror>
</mirrors>

c 配置私服仓库【可选,为了确定jar包存储位置】

后下载的jar包都会放在该目录下。

复制代码
  <!-- 配置私服仓库地址 -->
  <localRepository>D:\maven\mvnRespo</localRepository>

在D盘创建D:\maven\mvnRespo文件夹


🍁五**、常用**maven指令

1. maven常用命令
命令 描述

mvn clean 对项目进行清理,删除target目录下编译的内容

mvn compile 编译项目源代码

mvn test 对项目进行运行测试

mvn package 打包文件并存放到项目的target目录下,打包好的文件通常都是编译后的 class文件

mvn install 在本地仓库生成仓库的安装包,可供其他项目引用,同时打包后的文件放 到项目的target目录下

相关推荐
MapGIS技术支持3 分钟前
MapGIS Objects Java计算一个三维点到平面的距离
java·开发语言·平面·制图·mapgis
Coder_Boy_6 分钟前
业务导向型技术日志首日记录(业务中使用的技术栈)
java·驱动开发·微服务
盖世英雄酱581361 小时前
springboot 项目 从jdk 8 升级到jdk21 会面临哪些问题
java·后端
济南壹软网络科技有限公司1 小时前
企业级盲盒系统:Java高并发架构在多元化抽奖电商中的设计与实践
java·架构·开源源码·盲盒源码·盲盒h5·盲盒app
廋到被风吹走1 小时前
【Java】常用设计模式及应用场景详解
java·开发语言·设计模式
一条可有可无的咸鱼2 小时前
企业招聘信息,企业资讯进行公示
java·vue.js·spring boot·uni-app
程序猿DD2 小时前
JUnit 5 中的 @ClassTemplate 实战指南
java·后端
爱吃山竹的大肚肚2 小时前
EasyPOI 大数据导出
java·linux·windows
panzer_maus3 小时前
归并排序的简单介绍
java·数据结构·算法