Maven的概念

news2024/9/19 22:29:41
 1.什么是Maven
1.1.什么是Maven

Maven是跨平台的项目管理工具,主要服务于基于Java平台的项目构建、依赖管理以及项目信息管理。

1.2.什么是理想的项目构建

高度自动化,标准化,跨平台,可重用的组件

1.3.什么是依赖,为什么要进行依赖管理

依赖是项目构建或运行时所需要的一些文件,大部分项目需要第三方类库或项目文件。自动下载,统一依赖管理

1.4.有哪些项目信息

项目信息描述,开发人员信息,开发者信息等

2.什么是依赖管理

依赖管理是对第三方依赖包的管理,可以连接互联网下载项目所需第三方jar包。

依赖管理是对自己开发的模块的管理,可以像引用第三方依赖包一样引用自己项目的依赖包。

3.什么是项目构建

项目构建是一个从编写源代码到编译、测试、运行、打包、部署的过程。

构建传统项目和Maven项目的两种方式:

传统项目:

打开IDEA编写源代码和配置文件,对源代码进行编译,可以使用Junit进行单元测试,把项目打成war包,部署到Tomcat服务器中运行。

Maven项目:

Maven将项目构建过程进行标准化,每个阶段都可以使用一个命令来完成。

清理 --> 编译 --> 测试 --> 报告 --> 打包 --> 部署

好处:

可以通过命令完成项目构建。(测试:使用 mvn tomcat:run 的命令来发布运行项目)Maven对每个构建阶段进行规范,有利于大型团队协作开发。

4.Maven的应用场景

开发人员只需要按照Maven标准的目录结构进行开发即可,然后提交代码。在测试服务器上拉取Java源码,然后可以使用Maven的自动化项目构建完成项目的清理、编译、测试、打包、安装、部署等。

5.为什么使用Maven

IDE\Eclipse\IDEA

手工操作较多,编译、测试、部署等工作都是独立的,很难一步完成

每个人的IDE配置都不同,本地代码换个地方编译容易出错

Ant

没有一个约定的目录结构

必须明确让Ant做什么、什么时候做,然后编译、打包

没有生命周期,必须定义目标及其实现的任务序列

没有集成依赖管理

Maven

拥有约定,知道你的代码在哪里,放到哪里去

拥有一个生命周期,例如执行 mvn install 就可以自动执行编译、测试、打包等构建过程

只需要定义一个 pom.xml ,然后把源码放到默认的目录,Maven 帮你处理其他事情

拥有依赖管理、仓库管理

6.Maven模型

7.Maven仓库概念
7.1.何为Maven仓库

用来统一存储所有Maven共享构建的位置就是仓库

7.2.仓库的分类

7.2.1.本地仓库

~/.m2/repository/  可修改

每个用户只有一个本地仓库

7.2.2.远程仓库

中央仓库:Maven默认的远程仓库

私服:一种特殊的远程仓库,它是架设在局域网内的仓库

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

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

相关文章

wget下载github文件得到html文件

从github/gitee下载源文件,本来是22M下载下来只有11k 原因: Github会提供html页面,包括指定的文件、上下文与相关操作。通过wget或者curl下载时,会下载该页面 解决方式: github点击Code一栏的raw按钮,获得源…

HTTPS证书价格差异体现在哪?

HTTPS证书作为保障网站安全的重要工具,其类型、功能和费用差异成为用户选择时的关键考量因素。本文将深入探讨HTTPS证书的不同类型、功能以及费用差异,以帮助用户做出更合适的选择。 HTTPS证书的类型 HTTPS证书主要分为三种:DV(D…

24证券从业考试报名『个人信息表』填写模板❗

24证券从业考试报名『个人信息表』填写模板❗ 1️⃣居住城市、通讯地址:写自己现居住的地址就可以。 2️⃣学历:需要注意的是学历填写的是考生已经取得的学历,在校大学生已经不具有报名资格,选择大专以上,或者是高中学…

【轨物方案】成套开关柜在线监测物联网解决方案

随着物联网技术的发展,电力设备状态监测技术也得到了迅速发展。传统的电力成套开关柜设备状态监测方法主要采用人工巡检和定期维护的方式,这种方法不仅效率低下,而且难以保证设备的实时性和安全性。因此,基于物联网技术的成套开关…

ARM架构(二)—— arm v7-a/v8/v9寄存器介绍

1、ARM v7-A寄存器 1.1 通用寄存器 V7 V8开始 FIQ个IRQ优先级一样, 通用寄存器:31个 1.2 程序状态寄存器 CPSR是程序状态毒存器,保存条件标志位,中断禁止位,当前处理器模式等控制和状态位。每种异常模式下还存在SPS…

MySQL之索引及简单运用

索引: 什么是索引 索引是数据库中一种非常重要的数据结构,用于帮助快速查询数据库表中的数据。它就像一本书的目录,能够让你快速定位到书中的某个具体章节或内容,而不需要一页一页地翻阅整本书。 在数据库管理系统中,…

Servlet 3.0的新特征

版权声明 本文原创作者:谷哥的小弟作者博客地址:http://blog.csdn.net/lfdfhlServlet 3.0概述 Servlet 3.0规范是在2009年随着Java EE 6的发布而推出的。它引入了一系列新特性和改进,旨在简化Web应用的开发和部署过程,并提高Web应用的性能和可扩展性。Servlet 3.0的发布标…

C++ | Leetcode C++题解之第279题完全平方数

题目: 题解: class Solution { public:// 判断是否为完全平方数bool isPerfectSquare(int x) {int y sqrt(x);return y * y x;}// 判断是否能表示为 4^k*(8m7)bool checkAnswer4(int x) {while (x % 4 0) {x / 4;}return x % 8 7;}int numSquares(i…

河南萌新联赛2024第(二)场---G. lxy的通风报信

题目描述 在 nnn mmm 的平面星球里&#xff08; 5<n5 < n5<n&#xff0c; m<1000m < 1000m<1000 &#xff09;&#xff0c;存在着 aaa 支军队 ( 2<a<502 < a < 502<a<50 ) , 和 bbb 支驻扎在地图中的敌军 ( 0<b<n∗m−a0 < b &…

Python写UI自动化--playwright(通过UI文本匹配实现定位)

本篇简单拓展一下元素定位技巧&#xff0c;通过UI界面的文本去实现定位 目录 匹配XPath 匹配文本元素 .count()统计匹配数量 处理匹配文本返回多个元素 1、使用.nth(index)选择特定元素: 2、获取所有匹配的元素并遍历: 3、错误处理: 匹配XPath 比如我们要定位到下图的…

SpringBoot 项目配置文件注释乱码的问题解决方案

一、问题描述 在项目的配置文件中&#xff0c;我们写了一些注释&#xff0c;如下所示&#xff1a; 但是再次打开注释会变成乱码&#xff0c;如下所示&#xff1a; 那么如何解决呢&#xff1f; 二、解决方案 1. 点击” File→Setting" 2. 搜索“File Encodings”, 将框…

JCR一区级 | Matlab实现TTAO-Transformer-LSTM多变量回归预测

JCR一区级 | Matlab实现TTAO-Transformer-LSTM多变量回归预测 目录 JCR一区级 | Matlab实现TTAO-Transformer-LSTM多变量回归预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.【JCR一区级】Matlab实现TTAO-Transformer-LSTM多变量回归预测&#xff0c;三角拓扑聚合…

【C++进阶学习】第八弹——红黑树的原理与实现——探讨树形结构存储的最优解

二叉搜索树&#xff1a;【C进阶学习】第五弹——二叉搜索树——二叉树进阶及set和map的铺垫-CSDN博客 AVL树&#xff1a; ​​​​​​【C进阶学习】第七弹——AVL树——树形结构存储数据的经典模块-CSDN博客 前言&#xff1a; 在前面&#xff0c;我们已经学习了二叉搜索树和…

Sentinel限流规则详解

上一期教程讲解了 Sentinel 的快速入门&#xff1a;Sentinel快速入门&#xff0c;这一期主要讲述 Sentinel 的限流规则 簇点链路 簇点链路就是项目内的调用链路&#xff08;Controller -> Service -> Mapper&#xff09;&#xff0c;链路中被监控的每个接口就是一个资源…

论文阅读【检测】:商汤 ICLR2021 | Deformable DETR

文章目录 论文地址AbstractMotivation技术细节多尺度backbone特征MSDeformAttention 小结 论文地址 Deformable DETR 推荐视频&#xff1a;bilibili Abstract DETR消除对目标检测中许多手工设计的组件的需求&#xff0c;同时表现出良好的性能。然而&#xff0c;由于Transfor…

微服务案例搭建

案例搭建 使⽤微服务架构的分布式系统,微服务之间通过⽹络通信。我们通过服务提供者与服务消费者来描述微服 务间的调⽤关系。 服务提供者&#xff1a;服务的被调⽤⽅&#xff0c;提供调⽤接⼝的⼀⽅ 服务消费者&#xff1a;服务的调⽤⽅&#xff0c;依赖于其他服务的⼀⽅ 我…

pyenv-win | python版本管理,无需卸载当前版本

系统&#xff1a;windows&#xff0c;且已安装git。 使用 pyenv-win 在Windows中管理多个python版本&#xff0c;而无需卸载当前版本。安装步骤如下&#xff1a; 安装 pyenv-win 1. 安装 Git 和 pyenv-win: git clone https://github.com/pyenv-win/pyenv-win.git %USERPRO…

河南萌新联赛2024第(二)场:南阳理工学院

河南萌新联赛2024第&#xff08;二&#xff09;场&#xff1a;南阳理工学院 2024.7.24 13:00————15:00 过题数5/11 补题数6/11 国际旅行Ⅰ 国际旅行Ⅰ 小w和大W的决斗。 A*BBBB “好”字符 水灵灵的小学弟 lxy的通风报信 狼狼的备忘录 重生之zbk要拿回属于他的一切 这是签…

THS配置keepalive(yjm)

启动完THS管理控制台和THS后&#xff0c;登录控制台&#xff0c;进入实例管理》节点管理&#xff0c;可以分别使用界面配置和编辑配置设置长连接。 1、界面配置 点击界面配置》集群设置&#xff0c;启用长连接&#xff0c;设置长连接数、最大请求数和超时时间。 2、编辑配置 …

文章自然润色 API 数据接口

文章自然润色 API 数据接口 ai / 文本处理 基于 AI 的文章润色 专有模型 / 智能纠错。 1. 产品功能 基于自有专业模型进行 AI 智能润色对原始内容进行智能纠错高效的文本润色性能全接口支持 HTTPS&#xff08;TLS v1.0 / v1.1 / v1.2 / v1.3&#xff09;&#xff1b;全面兼容…