Maven学习(一):Maven简介及安装配置

news2024/12/23 17:27:03

Maven简介及安装配置

  • 一、Maven简介
    • 1.1、Maven是什么
    • 1.2、Maven的作用
  • 二、Maven安装配置
    • 2.1、大前提
    • 2.2、Maven下载
    • 2.3、windows版
      • 1、安装
      • 2、配置环境
      • 3、配置本地仓库
    • 2.4、mac版
      • 1、安装
      • 2、配置环境
      • 3、需要注意的点
      • 4、配置本地仓库

一、Maven简介

1.1、Maven是什么

先对Maven做一个简单的认识:

  1. Maven的本质是一个项目管理工具,将项目开发和管理过程抽象成一个项目对象模型(POM)
  2. POM(Project Object Model):项目对象模型
    可以通过下图做进一步理解:
    Maven模型图

1.2、Maven的作用

Maven的作用可大致概括为以下三点:

  1. 项目构建:提供标准的、跨平台的自动化项目构建方式;
  2. 依赖管理:方便快捷的管理项目所需的资源(jar包),避免资源间版本冲突问题;
  3. 统一开发结构:提供统一标准的项目开发结构如下图所示:
    统一标准的项目开发结构

二、Maven安装配置

2.1、大前提

maven 的使用是在jdk的基础上,所以电脑必须有jdk,若没有安装可参考文章《JDK,Tomcat 9.0,Eclipse For JavaEE安装、配置、测试》进行安装,过程记录十分详细;
咱这一条龙服务,直接将windows版和mac版的安装都进行一个汇总,也供大家参考;

2.2、Maven下载

官方网站:https://maven.apache.org/
下载地址:https://maven.apache.org/download.cgi
历史版本下载地址:https://archive.apache.org/dist/maven/maven-3/
这里以历史版本3.6.3为例:
Maven3.6.3下载

2.3、windows版

1、安装

Maven属于绿色版软件,下载即安装,将下载好的apache-maven-3.6.3-bin.zip解压到我们想要存放的位置(注意:文件路径不要包含中文、空格等特殊字符、记住存放的路径后边要用),如下图所示我存放至D:\Java\apache-maven-3.6.3下;
Maven存放路径

2、配置环境

  1. 直接在设置搜素环境变量,随便点击一个打开环境变量配置界面:
    环境变量
  2. 点击环境变量打开:
    环境变量
  3. 系统变量点击新建:
    点击新建
  4. 输入变量名:MAVEN_HOME;变量值:D:\Java\apache-maven-3.6.3(此处变量值替换为你的Maven安装路径),点击确定按钮保存:
    编辑系统变量
  5. 找到系统变量中的Path,双击打开:
    找到path
  6. 点击新建,输入%MAVEN_HOME%\bin,点击确定保存:
    配置环境变量
  7. 打开命令行(快捷键:Win+R 输入cmd)输入mvn -v 显示下面内容说明配置成功:
    安装成功

3、配置本地仓库

一般情况下,我们需要自己重新设置本地仓库的地址,设置方法如下:

  1. 创建文件夹mavRepository,用来保存下载的jar包文件,记得路径以后可以找到就行,我放在跟Maven同级的Java目录下:
    在这里插入图片描述
  2. 用记事本打开Maven的核心配置文件setting.xml:
    在这里插入图片描述
  3. 将仓库存放的位置设置成我们第一步新建的那个文件夹路径:D:\Java\mavRepository,如下图所示,一定要看好了别写到注释掉的代码里去了
    在这里插入图片描述
  4. 因为国外的服务器下载jar包很慢所以我们改为阿里云服务器,找到mirrors节点加入以下配置(看准位置别加到注释里边去了):
<mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>
</mirror>

在这里插入图片描述
到此Window版的安装配置就大功告成了!!!

2.4、mac版

1、安装

Maven属于绿色版软件,下载即安装,将下载好的apache-maven-3.6.3-bin.tar.gz 解压到我们想要存放的位置(注意:文件路径不要包含中文、空格等特殊字符、记住存放的路径后边要用),如下图所示我存放至/Users/xxx/Java下;
在这里插入图片描述

2、配置环境

  1. 打开terminal,输入vim ~/.bash_profile打开.bash_profile文件,在文件中添加设置环境变量的命令如下:
export MAVEN_HOME=/Users/你的用户名/Java/apache-maven-3.6.3
export PATH=$PATH:$MAVEN_HOME/bin

配置后如下图所示,添加完之后执行:wq保存退出:
在这里插入图片描述
2. 执行命令source ~/.bash_profile让配置生效,输入mvn -v出现如下结果表示环境搭建成功:
在这里插入图片描述

3、需要注意的点

上述的source ~/.bash_profile 在当前窗口执行之后,mvn -v命令生效,但是在新的终端打开,mvn -v并不生效, 提示zsh: command not found: mvn,解决办法:把source ~/.bash_profile 添加到./zshrc

  1. 命令行输入vi ~./zshrc,打开zshrc文件在行末加入source ~/.bash_profile
    在这里插入图片描述
  2. :wq保存并退出,并source ~/.zshrc使其生效,此时在新的窗口打开mvn -v就直接生效了;

4、配置本地仓库

此部分跟Windows的差不多配置方法。
一般情况下,我们需要自己重新设置本地仓库的地址,设置方法如下:

  1. 创建文件夹mavRepository,用来保存下载的jar包文件,记得路径以后可以找到就行,我放在跟Maven同级的Java目录下:
    在这里插入图片描述

  2. 用文本编辑打开Maven的核心配置文件setting.xml:
    在这里插入图片描述

  3. 将仓库存放的位置设置成我们第一步新建的那个文件夹路径:Users/用户名/Java/mavRepository,如下图所示,一定要看好了别写到注释掉的代码里去了
    在这里插入图片描述

  4. 因为国外的服务器下载jar包很慢所以我们改为阿里云服务器,找到mirrors节点加入以下配置(看准位置别加到注释里边去了):

<mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>
</mirror>

在这里插入图片描述

到此MAC版的安装配置也大功告成了!!!有错误的地方欢迎留言指正🖖🖖🖖

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

从 Spectral Clustring 推导到 Regularized Diffusion Process

Spectral Clustring 参考&#xff1a;bilibili 机器学习-白板推导系列(二十二)-谱聚类&#xff08;Spectral Clustering&#xff09; Background 首先看一种数据分布&#xff1a; 对于以上分布的数据&#xff0c;可以直接利用K−meansK-meansK−means或者GMM&#xff08;高…

2、linux_CentOS_6_64位常用命令远程操作--yum云用不了_建议学习Ubuntu

Linux的概述 学习Linux之前先了解Unix Unix是一个强大的多用户、多任务操作系统。于1969年在AT&T的贝尔实验室开发。UNIX的商标权由国际开放标准组织&#xff08;The Open Group&#xff09;所拥有。UNIX操作系统是商业版&#xff0c;需要收费&#xff0c;价格比Microsof…

洞悉获客之道,林肯汽车开展高端社区精准营销俘获消费者芳心

一、出场即焦点 全新领航员诠释顶级美式豪华“强大的外部气场&#xff0c;肌肉与优雅完美结合”&#xff0c;一直以来&#xff0c;美式豪华汽车以沉稳、古典的高端奢华气质演绎“出场即焦点”的恢弘气场&#xff0c;吸引着无数精英人士为之着迷、追捧。2022 年&#xff0c;林肯…

C/C++宏定义注意事项

宏定义后不能加“&#xff1b;”&#xff0c;如果想查找宏可能带来的bug,可以增加编译选项&#xff1a;/P&#xff0c;然后选择仅编译&#xff0c; 这时会生成*.i的文件&#xff0c;打开后可以看到编译器替换宏以后的实际内容&#xff0c;然后再去查看相关的替换有没有错误。带…

夏普MX-M2658N复印机显示请放入载体组件

故障描述: 一台夏普MX-M2658N复印机一开机就显示请放入载体组件,重新再次开机有可能不显示但是复印或打印的时候一定会卡纸,卡纸有时候卡在硒鼓附近或者加热组件的位置; 故障处理: 1、碳粉质量差; 2

fiddler的自动响应器_小实验

目录 一、小实验介绍 二、fiddler的自动响应器的应用 1.找对自动响应器的位置&#xff0c;添加规则 2.编辑规则&#xff0c;将这个请求用fiddler的内置响应&#xff1b; 3.编辑规则&#xff0c;将这个请求重定向到本地资源&#xff1b; 4.编辑响应 一、小实验介绍 承接上…

【自学Docker 】Docker ps命令

Docker ps命令 大纲 Docker ps命令概述 docker ps 命令可以用来列出 Docker容器 相关信息。 Docker ps命令语法 haicoder(www.haicoder.net)# docker ps [OPTIONS]Docker ps命令参数 选项说明无参默认显示正在运行的容器。-a显示所有的容器&#xff0c;包括未运行的。-f根…

[HCTF 2018]admin (三种解法详细详解)

目录 信息收集 思路一&#xff1a;弱口令爆破 思路2&#xff1a;垂直越权 代码审计 Unicode欺骗 Unicode 简介 伪造flask session 信息收集 注册登录 然后查看源码 <!-- you are not admin --> 看来需要伪造admin的身份 在changepassword页面查看源代码 <!-…

C++ 语法基础课8 —— STL/位运算和常用库函数

文章目录STL1. #include\<vector>(尾部增删)(1) 声明(2) size/empty(3) clear(4) 迭代器(iterator)(5) begin/end(遍历)(6) front/back(7) push_back()/pop_back()2. #include\<queue>(队列先进先出)(1) 声明(2) 循环队列 queue(队列结构)(3) 优先队列 priority_qu…

基于Python分析气象数据教程-1

前言本笔记介绍了如何使用 Python、pandas 和 SciPy 对天气数据进行基本分析。 它不包含对气象科学的贡献&#xff0c;但说明了如何生成简单的图和基本模型来拟合一些真实的物理观测。一、相关库引入import numpy import scipy.stats import pandas import matplotlib.pyplot a…

【零基础】学python数据结构与算法笔记13-贪心算法

文章目录前言80.贪心算法&#xff08;新一章&#xff1a;算法进阶&#xff09;81.分数背包82.分数背包实现83.数字拼接问题84.数字拼接问题实现85.活动选择问题86.活动选择问题实现87.贪心算法总结总结前言 学习python数据结构与算法&#xff0c;学习常用的算法&#xff0c; b…

LeetCode(Array)1656. Design an Ordered Stream

1. 问题 There is a stream of n (idKey, value) pairs arriving in an arbitrary order, where idKey is an integer between 1 and n and value is a string. No two pairs have the same id. Design a stream that returns the values in increasing order of their IDs b…

2023年网络安全比赛--网页渗透测试中职组(超详细)

一、竞赛时间 180分钟 共计3小时 二、竞赛阶段 1.访问服务器网站目录1,根据页面信息完成条件,将页面中的flag提交; 2.访问服务器网站目录2,根据页面信息完成条件,将页面中的flag提交; 3.访问服务器网站目录3,根据页面信息完成条件,将页面中的flag提交; 4.访问服务器网…

【Java】流式编程学习笔记

文章目录一、流简介二、创建流2.1 由值创建流&#xff1a;of2.2 由列表创建流&#xff1a;stream2.3 由 Builder 创建流&#xff1a;build2.4 由文件生成流&#xff1a;lines2.5 由函数生成流2.5.1 迭代&#xff08;如果不做限制&#xff0c;就是创建无限流&#xff09;&#x…

线性结构之单链表详解

文章目录前言一.单链表的结构体二、单链表的基本接口1.SListMalloc&#xff08;申请节点&#xff09;2.SListPushBack&#xff08;尾插&#xff09;3.SListPushFront&#xff08;头插&#xff09;4.SListPopBack&#xff08;尾删&#xff09;5.SListPopFront&#xff08;头删&a…

0115 作用域,对象

作用域意义&#xff1a;一段代码中所用到的名字不总是有效可用的&#xff0c;限定这个名字的可用性代码范围全局作用域全局有效&#xff0c;作用所有代码局部作用域局部有效&#xff0c;作用于函数内的代码环境&#xff0c;和函数有关也称函数作用域块级作用域在大括号{}有效&a…

Docker中安装Centos

window版的docker 1.cmd拉取centos镜像 docker pull centos2.启动centos容器&#xff0c;并把docker上centos的22端口映射到本机50001端口(端口号可以自己指定) 3.进入到Centos容器 通过docker命令,查看当前存在的镜像或者容器 查看镜像: docker images查看容器: docker …

js如何实现随机数切换

前言在一些电商网站,或一些活动页上,看到一些特效,比如:抽奖时,点击图片,实现图片的随机切换,数字的随机切换等,为了吸引用户的注意力,增加网页的互动性,这个效果是怎么实现的呢01具体示例https://coder.itclan.cn/fontend/js/14-click-num-suiji/点击文末左下角阅读原文,即可查…

MySQL三大日志(binlog、redo log和undo log)详解

MySQL三大日志binlog、redo log和undo log详解1.redo logredo log概述刷盘时机innodb_flush_log_at_trx_commit0innodb_flush_log_at_trx_commit1innodb_flush_log_at_trx_commit2日志文件组2.binlogbinlog 概述记录格式写入机制刷盘时机3.两阶段提交4.undo log5.总结1.redo lo…

SSL和TLS协议如何提供身份验证、机密性和完整性

SSL 和 TLS 协议使两方能够相互识别和验证&#xff0c;并以机密性和数据完整性进行通信。SSL 和 TLS 协议通过 Internet 提供通信安全性&#xff0c;并允许客户端/服务器应用程序以保密和可靠的方式进行通信。这些协议有两层&#xff1a;记录协议和握手协议&#xff0c;它们位于…