什么是Maven,Maven的概述及基本使用

MAVEN

  • 一、Maven简介
    • 1.1、Maven概述
    • 1.2、Maven仓库
    • 1.3项目获取jar包过程
  • 二、Maven使用
    • 2.1Maven安装配置
      • 2.1.1配置环境变量
      • 2.1.2配置本地仓库
      • 2.1.3配置阿里云私服
    • 2.2Maven基本使用
      • 2.2.1Maven常用指令
      • 2.2.2Maven生命周期
  • 总结

一、Maven简介

  • Apache Maven是一个项目管理和构建工具,它基于项目对象模型(POM)的概念,通过一小段描述信息来管理项目的构建、报告和文档
  • 官网:http://maven.apache.org/
    • 项目对象模型(Project Object Model)
    • 依赖管理模型(Dependency)
    • 插件(Plugin)

在这里插入图片描述

1.1、Maven概述

  • Maven是专门用于管理和构建Java项目的工具,它的主要功能有:
    • 提供了一套标准化的项目结构
    • 提供了一套标准化的构建流程(编译、测试、打包、发布…)
    • 提供了一套依赖管理机制
  • 依赖管理:
    • 依赖管理其实就是管理你项目所依赖的第三方资源(jar包、插件…)
    • 1.下载jar包
    • 2.复制jar包到项目
    • 3.将jar包加入到工作环境

1.Maven使用标准的坐标配置来管理各种依赖
2.只需要简单的配置就可以完成依赖管理

1.2、Maven仓库

  • 仓库:用于存储资源,包含各种jar包
  • 仓库分类:
    • 本地仓库:自己电脑上存储资源的仓库,连接远程仓库获取资源
    • 远程仓库:非本机电脑上的仓库,为本地仓库提供资源
    • 中央仓库:Maven团队维护,存储所有资源的仓库
    • 私服:部门/公司范围内存储资源的仓库,从中央仓库获取资源
  • 私服的作用:
    • 保存具有版权的资源,包含购买或自主研发的jar
    • 中央仓库中的jar都是开源的,不能存储具有版权的资源
    • 一定范围内共享资源,仅对内部开放,不对外共享

1.3项目获取jar包过程

  • 假设有两个项目,项目1需要A这个jar包,,在项目1中写好配置后,Maven就会自动的到本地仓库中寻找是否有A这个jar包,如果没有,Maven就会自动地到中央仓库去找,在中央仓库找到了,此时Maven会自动地下载中央仓库里的A的jar包到本地仓库,这时项目1就引用了A这个jar包。
  • 若项目2也要使用A这个jar包,项目2写好了配置后,Maven会自动地到本地仓库寻找,本地仓库已经有了A这个jar包,此时直接引用到项目2当中完成功能。

在这里插入图片描述

  • 若存在远程仓库(私服)的情况下,项目2需要引用B这个jar包,Maven会现在本地仓库找,发现没有后回去私服找B这个jar包,若是没有的话,会到中央仓库,在中央仓库找到后Maven会下载B这个jar包到私服,然后传递给本地仓库,这时项目2就可以引用B的jar包了。

在这里插入图片描述

二、Maven使用

2.1Maven安装配置

  • 1.解压安装包apache-maven-3.9.1-bin.zip即安装完成
  • 2.配置环境变量MAVEN_HOME为安装路径的bin目录
  • 3.配置本地仓库:修改conf/settings.xml中的<localRepository>为一个指定目录
  • 4.配置阿里云私服:修改conf/settings.xml中的<mirros>标签,为其添加如下标签:
<mirror><id>alimaven</id><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><mirrorOd>central</mirrorOf>
</mirror>

2.1.1配置环境变量

  • 1.找到Maven的安装目录,复制路径
    在这里插入图片描述

  • 2.点击此电脑->属性:
    在这里插入图片描述

  • 3.点击高级系统设置
    在这里插入图片描述

  • 4.点击环境变量
    在这里插入图片描述

  • 5.点击系统变量的新建
    在这里插入图片描述

  • 6.变量名为MAVEN_HOME,变量值为maven安装路径
    在这里插入图片描述

  • 7.点击系统变量中的Path,单击编辑
    在这里插入图片描述

  • 8.选择新建->确定
    在这里插入图片描述

  • 9.添加环境变量%MAVEN_HOME%/bin添加完成
    在这里插入图片描述

  • 此时打开cmd窗口输入mvn -version出现如下结果表示配置成功。


在这里插入图片描述


2.1.2配置本地仓库

  • 1.找到Maven安装目录下的conf文件夹,并单击settings.xml文件

在这里插入图片描述

在这里插入图片描述

  • 2.配置如下代码
  • <localRepository>D:\MyApp\Maven\apache-maven-3.9.1\mvn_resp</localRepository>
  • 其中的路径是自己定义的我的是D:\MyApp\Maven\apache-maven-3.9.1\mvn_resp

在这里插入图片描述

2.1.3配置阿里云私服

  • 还是在Maven安装目录下的conf文件夹,并单击settings.xml文件
    在其中配置找到<mirrors></mirrors>标签并加上如下代码:
<mirror><id>alimaven</id><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><mirrorOd>central</mirrorOf>
</mirror>

2.2Maven基本使用

2.2.1Maven常用指令

  • compile:编译
  • clean:清理
  • test:测试
  • package:打包
  • install:安装

在pom.xml所在目录下按住shift+右键,选择在此处打开Powershell窗口
在窗口中输入mvn compile开始编译,最后在pom.xml所在目录下生成target文件,成功结果如下:

在这里插入图片描述

输入mvn clean表示删除target文件

在这里插入图片描述

输入mvn package 会把当前的项目打包:

在这里插入图片描述
在这里插入图片描述

同样的test是测试代码,这里就不做演示了。

2.2.2Maven生命周期

  • Maven构建项目生命周期描述的是一次构建过程经历了多少个事件
  • Maven对项目构建的生命周期划分为3套
    • clean:清理工作
    • default:核心工作,例如编译,测试,打包,安装等
    • site:产生报告,发布站点等
  • 同一生命周期内,执行后边的命令,前边的所有命令会自动执行
    在这里插入图片描述

总结

关于Maven的创建和使用我们有了基本的了解,欢迎各位三连+关注!!!

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

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

相关文章

STM32 I2C OVR 错误

一、问题 STM32 I2C 用作从机时&#xff0c;开启如下中断并启用 callback 回调函数。 每一次复位后&#xff0c;从机都可以正常触发地址匹配中断ADDR&#xff0c;之后在该中断的回调函数中启用接收中断去收取数据时&#xff0c;却无法进入RXNE中断&#xff0c;而是触发了 OVR …

<C语言> 动态内存管理

1.动态内存函数 为什么存在动态内存分配&#xff1f; int main(){int num 10; //向栈空间申请4个字节int arr[10]; //向栈空间申请了40个字节return 0; }上述的开辟空间的方式有两个特点&#xff1a; 空间开辟大小是固定的。数组在申明的时候&#xff0c;必须指定数组的…

自然语言处理NLP介绍——NLP简介

目录 内容先进性说明内容大纲概要云服务器的使用 内容先进性说明 内容大纲概要 云服务器的使用

githack的安装步骤+一次错误体验

一.githack的安装步骤 1.要在Kali Linux上安装GitHack工具&#xff0c;您可以按照以下步骤操作&#xff1a; 打开终端并使用以下命令克隆GitHack存储库&#xff1a; git clone https://github.com/lijiejie/GitHack.git2.进入GitHack目录&#xff1a; cd GitHack3.安装依赖项…

一种分解多种信号模式非线性线性调频的方法研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

Elasticsearch

文章目录 分布式搜索引擎elasticsearch介绍elasticsearch作用ELK技术栈elasticsearch和lucene 倒排索引正向索引倒排索引正向和倒排比较 es的一些概念文档和字段索引和映射mysql与elasticsearch elasticsearch安装部署单点es部署kibana安装IK分词器扩展词词典停用词典 索引库操…

Go语言基础语法八万字详解,对小白友好

基本语法——变量var 变量的使用 什么是变量 变量是为存储特定类型的值而提供给内存位置的名称。在go中声明变量有多种语法。 所以变量的本质就是一小块内存&#xff0c;用于存储数据&#xff0c;在程序运行过程中数值可以改变 声明变量 var名称类型是声明单个变量的语法…

PaddleOCR #PP-OCR常见异常扫雷

异常一&#xff1a;ModuleNotFoundError: No module named ‘tools.infer’ 实验案例&#xff1a; PaddleOCR #使用PaddleOCR进行光学字符识别&#xff08;PP-OCR文本检测识别&#xff09; 参考代码&#xff1a; 图片文本检测实验时&#xff0c;运行代码出现异常&#xff1a;M…

【我们一起60天准备考研算法面试(大全)-第二十七天 27/60】【真分数】

专注 效率 记忆 预习 笔记 复习 做题 欢迎观看我的博客&#xff0c;如有问题交流&#xff0c;欢迎评论区留言&#xff0c;一定尽快回复&#xff01;&#xff08;大家可以去看我的专栏&#xff0c;是所有文章的目录&#xff09;   文章字体风格&#xff1a; 红色文字表示&#…

8.6 PowerBI系列之DAX函数专题-非日期类型的累计聚合

需求 需求1&#xff1a; 需求2&#xff1a; 实现 1.需求1实现&#xff1a; &#xff08;1&#xff09;在power query中添加列-添加索引列&#xff1b; &#xff08;2&#xff09;根据索引列进行累加计算。 度量值 累计聚合销售额 var current_pro_type selectedvalue(…

CHD6.2.1集群 Hive开启Iceberg

下载jar包 https://repo1.maven.org/maven2/org/apache/iceberg/iceberg-hive-runtime/1.0.0/iceberg-hive-runtime-1.0.0.jar 存放在/opt/cloudera/parcels/CDH/lib/hive/auxlib/ CDH集群修改hive配置 选择xml格式 粘贴即可 <property><name>iceberg.engine.hi…

华为认证HCIA-HCIP-HCIEdatacom题库解析+机构视频+实验

题库包含有2023年最新HCIA-datacom题库、HCIP-datacom题库&#xff0c;HCIE-datacom题库&#xff0c; 云计算HCIA&#xff0c;HCIP题库&#xff0c;云服务HCIA&#xff0c;HCIP题库&#xff0c;华为存储HCIP题库&#xff0c;华为安全HCIP题库 &#xff0c;学习笔记&#xff0c;…

MES管理系统中设备管理功能的原理是什么

制造执行系统MES是一种应用于制造工厂的实际操作系统&#xff0c;它通过实时监控和控制生产流程&#xff0c;为生产过程提供全面的管理和优化。在MES管理系统解决方案中&#xff0c;设备管理功能是非常重要的一部分&#xff0c;它可以实现设备实时监控、故障预警、维护保养等功…

【论文阅读】通过解缠绕表示学习提升领域泛化能力用于主题感知的作文评分

摘要 本文工作聚焦于从领域泛化的视角提升AES模型的泛化能力&#xff0c;在该情况下&#xff0c;目标主题的数据在训练时不能被获得。本文提出了一个主题感知的神经AES模型&#xff08;PANN&#xff09;来抽取用于作文评分的综合的表示&#xff0c;包括主题无关&#xff08;pr…

【打卡】Datawhale暑期实训ML赛事

文章目录 赛题描述任务要求数据集介绍评估指标 赛题分析基于LightGBM模型Baseline详解改进baseline早停法添加特征 赛题描述 赛事地址&#xff1a;科大讯飞锂离子电池生产参数调控及生产温度预测挑战赛 任务要求 初赛任务&#xff1a;初赛提供了电炉17个温区的实际生产数据&…

使用win10专业版自带远程桌面公司内网电脑

在现代社会中&#xff0c;各类电子硬件已经遍布我们身边&#xff0c;除了应用在个人娱乐场景的消费类电子产品外&#xff0c;各项工作也离不开电脑的帮助&#xff0c;特别是涉及到数据采集和储存的场景&#xff08;如安保监控、自动化流程等等&#xff09;&#xff0c;更是离不…

pytest自动化测试指定执行测试用例

1、在控制台执行 打开cmd,进入项目目录 指定执行某个模块 pytest testcases\Logistics\Platform\CarSource\test_CarSourceList.py 指定执行某个目录及其子目录的所有测试文件 pytest testcases\Logistics\Platform\CarSource 指定执行某个模块的某个类的某个测试用例 pyte…

音视频入门之音频采集、编码、播放

作者&#xff1a;花海blog 今天我们学习音频的采集、编码、生成文件、转码等操作&#xff0c;我们生成三种格式的文件格式&#xff0c;pcm、wav、aac 三种格式&#xff0c;并且我们用 AudioStack 来播放音频&#xff0c;最后我们播放这个音频。 使用 AudioRecord 实现录音生成…

文件系统总结

《本文件系统默认linux文件系统》 一、文件系统基本概念 文件系统是操作系统中负责存取和管理信息的模块&#xff0c;它用统一的方式管理用户和系统信息的存储、检索、更新、共享和保护&#xff0c;并为用户提供一整套方便有效的文件使用和操作方法文件系统是操作系统中管理文…

idea terminal npm指令无效

文章目录 一、修改setting二、修改启动方式 一、修改setting 菜单栏&#xff1a;File->Settings 二、修改启动方式 快捷方式->右键属性->兼容性->勾选管理员身份运行