Maven学习(传统Jar包管理、Maven依赖管理(导入坐标)、快速下载指定jar包)

目录

一、传统Jar包管理。

(1)基本介绍。

(2)传统的Jar包导入方法。

1、手动寻找Jar包。并放置到指定目录下。

2、使用IDEA的库管理功能。

3、配置环境变量。

(3)传统的Jar包管理缺点。

二、Maven。

(1)什么是Maven。

(2)Maven的特点与作用。

(3)下载安装Maven与配置Maven。

(4)Maven依赖管理。

三、快速手动下载指定jar包。

(1)Maven的中央仓库。

(2)进入Maven中央仓库网页。

(3)选择需要下载的Jar包。

(4)选择对应合适的Jar包版本。

(5)选择下载Jar包或导入坐标。(在pom.xml文件)


一、传统Jar包管理。

(1)基本介绍。
  • 传统的Jar包导入通常是:在没有使用(如Maven)这样的依赖管理工具之前,Java开发者如何管理和导入外部库

(2)传统的Jar包导入方法。
1、手动寻找Jar包。并放置到指定目录下。
  • 开发者需要手动从互联网上找到所需的Jar文件下载后将其放入项目的lib目录下
  • 在(如:Eclipse、IntelliJ IDEA等)中,需要手动将这些Jar文件添加到项目的构建路径中,以便编译器能够识别和使用这些库。

2、使用IDEA的库管理功能。

  • IDEA提供了库管理功能,允许开发者通过图形界面添加Jar文件。
  • 开发者可以通过IDE的“添加库”或“添加Jar包”功能,选择本地的Jar文件并将其添加到项目中。

3、配置环境变量。

  • 在某些情况下,开发者会通过设置环境变量(如:CLASSPATH)来指定Jar文件的位置,这样JVM在运行时能够找到这些库。
  • 等等还有其它方法(如:单独管理系统级的Jar包、赋值粘贴类文件、管理WAR文件)

(3)传统的Jar包管理缺点。
  • 开发者需要手动下载Jar包并将其复制到项目的lib目录下,这不仅耗时而且容易出错
  • 没有自动化的工具来处理依赖的解析和版本管理,导致依赖冲突和版本不一致的问题。
  • 由于每个项目都有自己的依赖副本,项目的移植和维护困难
  • 对于多个项目,相同的Jar包需要在每个项目中重复添加,大量的重复劳动。
  • 没有中央仓库来统一管理依赖。使得依赖的查找、下载和更新变得繁琐。
  • 没有统一的项目结构和构建流程。使得新开发者难以快速理解和上手项目。
  • 相比现代的Maven工具,传统方式在构建速度上存在劣势,尤其是在大型项目中。

  • 这些缺点导致了开发效率的降低项目维护难度的增加。这也是为什么像Maven和Gradle这样的现代依赖管理工具被广泛采用的原因。

二、Maven。

(1)什么是Maven。
  • Maven是一个软件项目管理和构建自动化工具,主要用于管理Java项目
  • Maven的主要作用是在项目开发阶段:对项目进行依赖管理、项目构建以及管理插件。

(2)Maven的特点与作用。
  • Maven使用XML文件(POM)来描述项目信息和配置。(包括项目依赖、插件、构建配置等)

  • Maven 提供了强大的依赖管理功能。能够自动下载项目所需的库文件,并解决依赖之间的版本冲突

  • Maven推崇"约定优于配置",推荐标准的目录结构和生命周期,使得项目结构更加统一。

  • Maven拥有丰富的插件系统。这些插件可以执行特定的任务(称为目标),如编译代码、运行测试、生成文档等。

  • Maven可以在多种操作系统上运行。(包括 Windows、Linux 和 macOS)

  • Maven有中央仓库。其中包含了大量常用的库,开发人员可以通过简单的配置来管理项目的依赖关系。

(3)下载安装Maven与配置Maven。
  • 这里的操作方法博主已经在另外的一篇博客进行总结了!(详细的很)
  • 博客链接如下。

Maven下载安装、环境配置(超详细)(包括Java环境配置(Windows)、在IDEA中配置Maven)_maven下载安装配置-CSDN博客文章浏览阅读1.3w次,点赞76次,收藏283次。这篇博客主要是记录了如何下载安装Maven ,并且如何在本机Windows配置环境变量。其次写到了如何在IDEA中配置Maven,最后在博客中还讲到了如何配置Java的环境变量......_maven下载安装配置https://blog.csdn.net/m0_74363339/article/details/139768830

(4)Maven依赖管理。
  • 就是对Jar包的管理,以往我们需要下载好xxxx.jar的jar包,粘贴到工程的lib目录下面去。
  • 如今使用Maven的依赖管理功能,想要引入某个Jar包只需要在对应的Maven项目的pom.xml文件中导入Maven的坐标即可。(它会通过坐标找到对应的Jar包并下载到本地的maven仓库!!

三、快速手动下载指定jar包。

(1)Maven的中央仓库。
  • Maven的中央仓库是Maven构建系统的核心组件之一,它提供了大量的开源库和依赖项,极大地简化了项目的依赖管理和构建过程。

  • 由于国内网络环境的原因,直接访问官方Maven中央仓库可能会遇到速度慢或不稳定的问题。因此,推荐国内用户使用国内的Maven中央仓库镜像,如阿里云华为云等提供的镜像。这些镜像不仅访问速度快,而且稳定性高,能够显著提升项目的构建效率。
Maven的中央仓库地址icon-default.png?t=O83Ahttps://mvnrepository.com/
(2)进入Maven中央仓库网页。
  • 左侧导航栏可以看到热搜的资源。
  • 也可以直接通过上方的主搜索栏,直接根据Jar包名进行搜索。


(3)选择需要下载的Jar包。
  • 也可以直接搜索Jar包名字即可。


(4)选择对应合适的Jar包版本。
  • 选择稳定的、且无漏洞的版本。
  • 选择使用次数较多的版本。(经过了市场检验的,使用人多说明稳定性好)


(5)选择下载Jar包或导入坐标。(在pom.xml文件)
  • 直接点击下面的"jar"按钮,弹出下载提示,直接下载。
  • 或者复制下面对应坐标并前往对应的Maven项目的pom.xml文件粘贴。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Java笔记】LinkedList 底层结构

一、LinkedList 的全面说明 LinkedList底层实现了双向链表和双端队列特点可以添加任意元素(元素可以重复),包括null线程不安全,没有实现同步 二、LinkedList 的底层操作机制 三、LinkedList的增删改查案例 public class LinkedListCRUD { public stati…

Linux中的线程

目录 线程的概念 进程与线程的关系 线程创建 线程终止 线程等待 线程分离 原生线程库 线程局部存储 自己实现线程封装 线程的优缺点 多线程共享与独占资源 线程互斥 互斥锁 自己实现锁的封装 加锁实现互斥的原理 死锁 线程同步 线程的概念 回顾进程相关概念 …

django应用JWT(JSON Web Token)实战

文章目录 一、什么是JWT二、为什么使用JWT三、在django项目中如何应用JWT 1、安装djangorestframework-simplejwt库:2、在settings.py中配置JWT认证:3、在urls.py中配置JWT的获取和刷新路由: 四、JWT如何使用 1、调用生成JWT的接口获取JWT2、…

如何借助5G网关实现油罐车安全在线监测

油罐车是常见的特种运输车辆,用以运送各种汽油、柴油、原油等油品,运输危险系数大,而且由于油罐车需要经常行驶在城区道路,为城市各个加油站点、企业工厂运输补充所需油料,因此也是危化品运输车辆的重点监测和管控对象…

EXCEL数据清洗的几个功能总结备忘

目录 0 参考教材 1 用EXCEL进行数据清洗的几个功能 2 删除重复值: 3 找到缺失值等 4 大小写转换 5 类型转化 6 识别空格 0 参考教材 精通EXCEL数据统计与分析,中国,李宗璋用EXCEL学统计学,日EXCEL统计分析与决策&#x…

知行之桥EDI系统V2024 12月9111版本更新

知行之桥EDI系统V2024于12月推出版本更新(版本号:9111),在原有产品的基础上进行了一系列的新增、更改和修复,以确保 EDI 和 MFT 集成尽可能的简单化。 主要特性 新增 新增EDI 交易伙伴管理控制台 交易伙伴管理控制台…

PDF 文件如何转为 CAD 图纸?PDF2CAD 使用教程

在工程设计和建筑行业中,PDF 文件常常被用来分享和存档图纸。然而,当需要对这些图纸进行编辑或进一步开发时,静态的 PDF 格式就显得力不从心了。这时候,将 PDF 文件转换为可编辑的 CAD(计算机辅助设计)格式…

JAVA守护线程和本地线程的区别?

大家好,我是锋哥。今天分享关于【JAVA守护线程和本地线程的区别?】面试题。希望对大家有帮助; JAVA守护线程和本地线程的区别? 在 Java 中,守护线程(Daemon Thread)和本地线程(User…

SpringBoot中集成常见邮箱中容易出现的问题

本来也没打算想写得。不过也是遇到一些坑&#xff0c;就记录一下吧&#xff0c;也折腾了小半天 1.maven配置 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId></dependency>2…

数据分析与可视化:用 Python 处理、分析与展示数据

数据分析与可视化&#xff1a;用 Python 处理、分析与展示数据 Python 在数据分析领域有着非常强大的生态和灵活性&#xff0c;从数据清洗、处理&#xff0c;到分析、可视化&#xff0c;它几乎无所不能。今天&#xff0c;我们一起来聊聊如何用 Python 处理、分析和展示数据&…

Chrome浏览器调用ActiveX控件--allWebOffice控件

背景 allWebOffice控件能够实现在浏览器窗口中在线操作文档的应用&#xff08;阅读、编辑、保存等&#xff09;&#xff0c;支持编辑文档时保留修改痕迹&#xff0c;支持书签位置内容动态填充&#xff0c;支持公文套红&#xff0c;支持文档保护控制等诸多办公功能&#xff0c;…

ESXI6.7开启SSH密码通过Xshell登录

背景 近期服务器安装了ESXI6.7&#xff0c;想通过SSH到终端把/var/log/下的所有日志文件下载下来 解决方案 1、esxi开启ssh登录 2、选择Troubleshooting Options 3、开启SSH 4、打开ESXi的web页面&#xff0c;设置开启shell 5、使用Xshell连接&#xff0c;方法一定要勾选Keybo…

Vue宏观理解

文章目录 1 Vue是什么2 前端运行环境和工具3 环境搭建3.1 node.js安装3.2 Vite环境安装 4 Vue项目开发4.1 Vue项目开发开发方式4.2 Vue项目结构4.3 启动Vue项目4.4 Vue开发4.4 Vue工程运行流程 1 Vue是什么 Vue是一款Web前端JavaScript 框架&#xff1b; 官网&#xff1a;http…

Redis安装和Python练习(Windows11 + Python3.X + Pycharm社区版)

环境 Windows11 Python3.X Pycharm社区版 思路 1 github下载redis压缩包 &#xff0c;安装并启动redis服务&#xff0c;在客户端连接redis服务。 2 在pycharm中运行python程序&#xff0c;连接redis服务&#xff0c;熟悉redis的使用和巩固python语言。 3 python开发环境…

Alan Chhabra:MongoDB AI应用程序计划(MAAP) 为客户提供价值

MongoDB全球合作伙伴执行副总裁 Alan Chhabra 每当有人向我问询MongoDB&#xff0c;我都会说他们很可能在不觉之间已经与MongoDB有过交集。事实上&#xff0c;包括70%财富百强在内的许多世界领先企业公司都在使用MongoDB。我们在MongoDB所做的一切都是为了服务客户&#xff0c…

蓝桥杯历届真题 --#递推 翻硬币(C++)

文章目录 思路完整代码结语 原题链接 思路 通过观察测试用例&#xff0c;我们猜测&#xff0c;从左到右依次对比每一个位置上的状态&#xff0c;如果不一样我们就翻一次&#xff0c;最终得到的答案即为正解。 完整代码 //这里是引入了一些常用的头文件,和一些常规操作 //第一…

vs配置c++标准

在 vcxproj 文件中添加 <LanguageStandard>stdcpp17</LanguageStandard> 和在 Visual Studio 属性页面中设置 “C语言标准” 为 “ISO C17 标准 (/std:c17)” 是完全等价的。 它们的对应关系是&#xff1a; VS属性页面中的设置&#xff1a; 项目 -> 属性 ->…

机器人构建详解:售前售后服务客服机器人与广告生成机器人的微调数据处理方法

引言 大模型&#xff08;如BERT、GPT等&#xff09;在自然语言处理任务中展现了强大的能力&#xff0c;但为了使其更贴合特定应用场景&#xff0c;通常需要进行微调。本文将详细讲解如何为售前售后服务的客服机器人和广告生成机器人准备高质量的微调数据&#xff0c;并通过具体…

R学习——因子

目录 1 定义因子&#xff08;factor函数&#xff09; 2因子的作用 一个数据集中的 只需要考虑可以用哪个数据来进行分类就可以了&#xff0c;可以用来分类就可以作为因子。 Cy1这个因子对应的水平level是4 6 8&#xff1a; 1 定义因子&#xff08;factor函数&#xff09; 要…

计算机毕设-基于springboot的口腔诊所系统的设计与实现(附源码+lw+ppt+开题报告)

博主介绍&#xff1a;✌多个项目实战经验、多个大型网购商城开发经验、在某机构指导学员上千名、专注于本行业领域✌ 技术范围&#xff1a;Java实战项目、Python实战项目、微信小程序/安卓实战项目、爬虫大数据实战项目、Nodejs实战项目、PHP实战项目、.NET实战项目、Golang实战…