假设一个项目需要用到日志组件Log4j,那么有如下方式添加这个组件。

一、传统方式:

1、访问官网https://logging.apache.org/log4j/2.x/download.html,下载指定版本的jar包。

2、拷贝jar包到项目的lib目录,或者eclipse中指定依赖目录。

3、当有新版的Log4j更新,以上方式就要重新做一次。

那么问题来了,像Log4j这样的包管理工作就必须自己去配置,假设一个项目有十几个依赖包,那么上面的方式工作量就是相当庞大的。

二、Maven方式:

为了解决上面的弊端,使用Maven方式将很快的解决上述问题。

1、通过Maven的中央仓库http://search.maven.org/查询出Log4j组件的坐标。比如:

<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.14</version>

2、将上述坐标整合到项目的pom.xml中去,如下:

<dependencies>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.14</version>
</dependency>
</dependencies>

3、当Maven构建或者eclipse添加完坐标后,Log4j的jar会自动的下载到项目的lib文件夹中,同时本地仓库也会有一份缓存。

4、如果上述节点的version忽略不写,每次构建时都会下载最新版本的jar包,这样为更新jar包提供了自动化处理。

通过Maven方式的管理,一切管理工作将交由Maven进行,并且更新这些完全不用自己机械化操作。

三、总结:

Maven的优势比传统方式方便很多,同时项目上的依赖关系也相当明了。

如果想要更详细的官方届时,参考:http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html

以上参考:http://www.yiibai.com/maven/maven-dependency-to-download-library.html

Maven依赖机制理解的更多相关文章

  1. Maven学习(八)-----Maven依赖机制

    Maven依赖机制 在 Maven 依赖机制的帮助下自动下载所有必需的依赖库,并保持版本升级. 案例分析 让我们看一个案例研究,以了解它是如何工作的.假设你想使用 Log4j 作为项目的日志.这里你要 ...

  2. maven 学习---Maven依赖机制

    在 Maven 依赖机制的帮助下自动下载所有必需的依赖库,并保持版本升级. 案例分析 让我们看一个案例研究,以了解它是如何工作的.假设你想使用 Log4j 作为项目的日志.这里你要做什么? 1.在传统 ...

  3. Maven 依赖机制

    概述 在 Maven 依赖机制的帮助下自动下载所有必需的依赖库,并保持版本升级.让我们看一个案例研究,以了解它是如何工作的.假设你想使用 Log4j 作为项目的日志.这里你要做什么? 传统方式 访问 ...

  4. Maven依赖机制

    案例分析 让我们看一个案例研究,以了解它是如何工作的.假设你想使用 Log4j 作为项目的日志.这里你要做什么? 1.在传统方式 访问 http://logging.apache.org/log4j/ ...

  5. Maven的依赖机制介绍

    以下内容引用自https://ayayui.gitbooks.io/tutorialspoint-maven/content/book/maven_manage_dependencies.html: ...

  6. Spring Security 3.2.x与Spring 4.0.x的Maven依赖管理

    原文链接: Spring Security with Maven原文日期: 2013年04月24日翻译日期: 2014年06月29日翻译人员: 铁锚 1. 概述 本文通过实例为您介绍怎样使用 Mave ...

  7. Maven学习(十八)-----Maven依赖管理

    其中一个Maven的核心特征是依赖管理.管理依赖关系变得困难的任务一旦我们处理多模块项目(包含数百个模块/子项目). Maven提供了一个高程度的控制来管理这样的场景. 传递依赖发现 这是很通常情况下 ...

  8. Java-Maven-Runoob:Maven 依赖管理

    ylbtech-Java-Maven-Runoob:Maven 依赖管理 1.返回顶部 1. Maven 依赖管理 Maven 一个核心的特性就是依赖管理.当我们处理多模块的项目(包含成百上千个模块或 ...

  9. maven课程 项目管理利器-maven 3-7 maven依赖范围 2星

    本节主要讲了maven的依赖范围: 在pom.xml   dependency标签的scope中.eclipse中有编译的路径,maven中有编译,运行,测试的路径. 1 scope为test,为测试 ...

随机推荐

  1. 线段树:CDOJ1591-An easy problem A (RMQ算法和最简单的线段树模板)

    An easy problem A Time Limit: 1000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Pr ...

  2. poj 3669 火星撞地球问题 bfs算法

    题意:火星撞地球,你要跑到一个永远安全的地方,求最短时间 思路:bfs+预处理 这题的数据量比较大,所以需要进行预处理 对每个位置设上时间(被撞的最早时间) 未被撞的设为-1 for (int j = ...

  3. jenkins配置邮箱时出错

    jenkins配置邮箱时出错: 这有可能是此博客http://www.cnblogs.com/yajing-zh/p/5109517.html在配置jenkins发送邮件时的第4步和第5步中的邮箱不匹 ...

  4. Android自动化测试如何获取坐标点?

    有以下三种方法: 1.打开开发者选项中的“显示指针位置”: 英文文版本为Settings->Developer option->Show touches(on)->Pointer l ...

  5. UVa 1452 递推 Jump

    约瑟夫变形,先计算出3个数时,最后三个数字的编号. 然后以这三个数为起点,就可以递推出n个数对应的最后三个数字的编号. 递推公式都是一样的. #include <iostream> #in ...

  6. 小米手机安装 charles 证书,提示“没有可安装的证书”

    错误环境: 1. Mac 下的 charles 2. 小米手机(MI 6 MUI 9.6 ,Android 8.x) 错误提示: 安装 charles 证书时,提示“没有可安装的证书” 解决方法: 1 ...

  7. python算法-排列组合

    排列组合 一.递归 1.自己调用自己 2.找到一个退出的条件 二.全排列:针对给定的一组数据,给出包含所有数据的排列的组合 1:1 1,2:[[1,2],[2,1]] 1,2,3:[[1,2,3],[ ...

  8. webdriver高级应用- 操作日期控件

    1. 通过点击的方式操作日期控件 #encoding=utf-8 from selenium import webdriver import unittest, time, traceback fro ...

  9. C++单例模式实例

    定义:在某些情况下,我们设计中的对象只需要一个,比方说:线程池(threadpool).缓存(cache).对话框.处理偏好设置和注册表对象.日志对象.充当打印机.显卡等设备的驱动程序的对象等.事实上 ...

  10. CS231n笔记 Lecture 2 Image Classification pipeline

    距离度量\(L_1\) 和\(L_2\)的区别 一些感性的认识,\(L_1\)可能更适合一些结构化数据,即每个维度是有特别含义的,如雇员的年龄.工资水平等等:如果只是一个一般化的向量,\(L_2\)可 ...