Maven学习(八)-----Maven依赖机制
Maven依赖机制
在 Maven 依赖机制的帮助下自动下载所有必需的依赖库,并保持版本升级。
案例分析
让我们看一个案例研究,以了解它是如何工作的。假设你想使用 Log4j 作为项目的日志。这里你要做什么?
1.在传统方式
- 访问 http://logging.apache.org/log4j/
- 下载 Log4 j的 jar 库
- 复制 jar 到项目类路径
- 手动将其包含到项目的依赖
- 所有的管理需要一切由自己做
如果有 Log4j 版本升级,则需要重复上述步骤一次。
2. 在Maven的方式
- 你需要知道 log4j 的 Maven 坐标,例如:
<groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.14</version>
它会自动下载 log4j 的1.2.14 版本库。如果“version”标签被忽略,它会自动升级库时当有新的版本时。
- 声明 Maven 的坐标转换成 pom.xml 文件。
<dependencies><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.14</version></dependency> </dependencies>
- 当 Maven 编译或构建,log4j 的 jar 会自动下载,并把它放到 Maven 本地存储库
- 所有由 Maven 管理
解释说明
看看有什么不同?那么到底在Maven发生了什么?当建立一个Maven的项目,pom.xml文件将被解析,如果看到 log4j 的 Maven 坐标,然后 Maven 按此顺序搜索 log4j 库:
- 在 Maven 的本地仓库搜索 log4j
- 在 Maven 中央存储库搜索 log4j
- 在 Maven 远程仓库搜索 log4j(如果在 pom.xml 中定义)
Maven 依赖库管理是一个非常好的工具,为您节省了大量的工作。
如何找到 Maven 坐标?
访问 Maven 中心储存库,搜索下载您想要的jar。
参考
- 依赖机制简介
转载于:https://www.cnblogs.com/zy-jiayou/p/7659909.html
Maven学习(八)-----Maven依赖机制相关推荐
- Maven学习(一)——Maven入门
为什么80%的码农都做不了架构师?>>> 一.Maven的基本概念 Maven(翻译为"专家","内行")是跨平台的项目管理工具.主要服 ...
- Maven学习(一) - Maven基础
2019独角兽企业重金招聘Python工程师标准>>> Maven作为Java语言的构建和依赖管理工具,已经被广泛使用.但对于maven的pom.xml的配置以及插件的使用,大部分人 ...
- maven学习:maven 的入门
2.maven 的入门 到目前为止,我们已经大概了解并安装好了Maven,现在,我们开始创建一个最简单的Hello World项目. 2.1 在Idea创建maven项目 创建一个Maven项目也十分 ...
- Maven学习(四)-----Maven中央存储库
Maven中央存储库 当你建立一个 Maven 的项目,Maven 会检查你的 pom.xml 文件,以确定哪些依赖下载.首先,Maven 将从本地资源库获得 Maven 的本地资源库依赖资源,如果没 ...
- Maven学习(三)-----Maven本地资源库
Maven本地资源库 Maven的本地资源库是用来存储所有项目的依赖关系(插件jar和其他文件,这些文件被Maven下载)到本地文件夹.很简单,当你建立一个Maven项目,所有相关文件将被存储在你的M ...
- Maven学习(1) - Maven入门
home index:http://maven.apache.org/ download:http://maven.apache.org/download.cgi install: http://ma ...
- Maven学习(一) --------- Maven 简介
目录 一.软件工程 概述 传统项目开发存在的问题 二.Maven 概述 Maven 优点 构建过程 三.Maven 核心概念 四.安装 Maven 环境 Maven 官网 : http://maven ...
- Maven学习九:依赖-dependency
Maven依赖 1. 依赖的配置 根元素project下的dependencies可以包含一个或多个dependency元素,以声明一个或多个依赖.每个依赖可以包含的元素有: groupId. ...
- 【Maven学习】Maven打包生成包含所有依赖的jar包
http://blog.csdn.net/u013177446/article/details/54134583 ******************************************* ...
最新文章
- java安卓开发工具_推荐几个非常实用的Android开发工具
- [待]-optee的native_intr_handler中断处理流程
- CTF(Pwn)32位文件 和 64 文件 的 差异
- sql server 怎么把视图中的数据存到另外一张表中_承上篇,自制插件优化Kep数据存储问题...
- xenserver 虚拟机扩容lvm磁盘分区的方法_Linux磁盘扩容
- POJ2402 Palindrome Numbers 回文数
- 为什么程序员需要关心顺序一致性,而不是 Cache 一致性?
- [react] react16的reconciliation和commit分别是什么?
- 程序员为什么要少写代码?
- 小熊的人生回忆(一)
- CentOS 7 SSH相关使用问题及其解决办法
- 周杰伦178首歌被网易云侵权 单曲仅获赔4500元
- Sharding-JDBC水平分表(环境搭建)_Sharding-Sphere,Sharding-JDBC分布式_分库分表工作笔记007
- java web sftp,sftp-sftp工具 v5.9.6
- Android APK 修改
- 新在线一键制作表白网系统源码
- Mock实现单元测试报错:Argument passed to when( ) is not a mock!
- Linux释放内存的命令
- The import com. cannot be resolved
- asp长度为4的随机数字写
热门文章
- JMX 简介 和 实例
- Android(java)学习笔记164:开发一个多界面的应用程序之不同界面间互相传递数据(短信助手案例)...
- C#中 类和结构 值类型和引用类型以及 值传递和引用传递
- windows添加删除程序打不开解决方案
- jenkins 备份配置信息
- Nginx+Tomcat+Memcached实现session共享
- GitHub趋势:Vue.js大有超过TensorFlow之势!
- Python开发【第二篇】:Python基本数据类型
- Java之美[从菜鸟到高手演变]之Spring源码学习 - 环境搭建
- jQuery comet