【安装指南】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目录下  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/450723.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

探索前端开发框架:React、Angular 和 Vue 的对决(一)

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

爬取58二手房并用SVR模型拟合

目录 一、前言 二、爬虫与数据处理 三、模型 一、前言 爬取数据仅用于练习和学习。本文运用二手房规格sepc(如3室2厅1卫)和二手房面积area预测二手房价格price&#xff0c;只是练习和学习&#xff0c;不代表如何实际意义。 二、爬虫与数据处理 import requests import cha…

[office] 在Excel2010中设定某些单元格数据不参与排序的方法介绍 #其他#知识分享#笔记

在Excel2010中设定某些单元格数据不参与排序的方法介绍 在Excel中排序&#xff0c;相信大家都会了&#xff0c;直接将一组数据按照从小到大或者从大到小进行排序&#xff0c;但是&#xff0c;现在要求我们规定其中几组数据不进行排序&#xff0c;只排序其余的部分。又该如何操作…

批量检测微信小程序是否封禁接口源码

<?php // 要检测的 appid 列表 $appids array(appid1, appid2, appid3); // 使用实际的 appid // 循环调用接口检测小程序状态 foreach ($appids as $appid) { $url https://yan.changxunwangluo.cn/xcx/check_mini_program.php?appid . urlencode($appid); $…

TOP100 链表(三)

7.2. 两数相加 给你两个 非空 的链表&#xff0c;表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的&#xff0c;并且每个节点只能存储 一位 数字。 请你将两个数相加&#xff0c;并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外&#xff0c;这两…

代码随想录day17--二叉树的应用5

LeetCode654.最大二叉树 题目描述&#xff1a; 给定一个不重复的整数数组 nums 。 最大二叉树 可以用下面的算法从 nums 递归地构建: 创建一个根节点&#xff0c;其值为 nums 中的最大值。递归地在最大值 左边 的 子数组前缀上 构建左子树。递归地在最大值 右边 的 子数组后…

再谈Redis三种集群模式:主从模式、哨兵模式和Cluster模式

总结经验 redis主从:可实现高并发(读),典型部署方案:一主二从 redis哨兵:可实现高可用,典型部署方案:一主二从三哨兵 redis集群:可同时支持高可用(读与写)、高并发,典型部署方案:三主三从 一、概述 Redis 支持三种集群模式,分别为主从模式、哨兵模式和Cluster模式。…

第六十一天 服务攻防-中间件安全CVE复现K8SDockerJettyWebsphere

第61天 服务攻防-中间件安全&CVE复现&K8S&Docker&Jetty&Websphere 知识点&#xff1a; 中间件及框架列表&#xff1a; lIS,Apache,Nginx,Tomcat,Docker,Weblogic,JBoos,WebSphere,Jenkins, GlassFish,Jira,Struts2,Laravel,Solr,Shiro,Thinkphp,Sprng,Fl…

视频上传-分片上传那点事

在上一篇文章中&#xff0c;我们讲解了从视频上传到保存在服务端的整个过程&#xff0c;在这个过程中&#xff0c;我们又细分了前端上传视频的几种方式&#xff0c;前端处理视频的几种方式&#xff0c;在前后端通信过程中需要注意的哪些点等等。有不清楚的小伙伴可以看看 上篇文…

Spring IoC容器(二)Bean的自定义及容器的扩展

Spring提供了一些接口来让我们定制bean 及扩展容器。 1 定制Bean 我们可以通过bean及容器的生命周期回调及一些Aware接口来定制bean。 1.1 生命周期回调 1.1.1 InitializingBean 与 DisposableBean 我们可以通过让Bean 实现InitializingBean 及DisposableBean 接口&#x…

软件测试学习笔记-测试用例的编写

7中测试分类 按照阶段可划分单元测试、集成测试、系统测试、验收测试。代码可见度划分黑盒测试、灰盒测试、白盒测试 单元测试&#xff1a;针对源代码的测试 集成测试&#xff1a;针对接口进行测试 系统测试&#xff1a;针对功能和非功能的测试 验收测试&#xff1a;公测、内测…

在Vue中如何构建复杂表单?

概述 很有可能&#xff0c;在我们的软件工程旅程中&#xff0c;我们至少要构建一次复杂的表单。本文将介绍如何创建一个复杂的表单&#xff0c;该表单可以使用一些Vue特性(如v-for和v-model)逐步增强。它还提供了一些基本的Vue核心功能的复习&#xff0c;这些功能将在您日常使…