maven的东西使用了一段时间,但是每次使用都多少有点含糊,所以总结一下。

  目前主要使用是在jar包的控制上

  原理:

    在本地,指定一个文件夹,便是maven的仓库,maven会从远程的中央仓库中下载你需要的jar资源到你本地,然后通过maven关联,讲jar包依赖到你的项目中,避免了你需要将jar包拷贝到lib中,并通过classpath引入这些jar包的工作。

  使用优点:

  1. 方便添加项目依赖的jar包,比如,你需要使用spring-mvc,那么,你必须引入spring-mvc及其相关的所有jar包到项目中,有时不同版本对依赖的jar包的版本是不同的,所以需要查看jar包的说明去引入对应版本号的jar文件。这看起来似乎太痛苦了。而maven在你引入使用的jar包时,便会为你引入它所依赖的所有jar包,连版本库都不用你考虑了。
  2. 方便控制jar包的版本,及各个jar包的依赖。比如,你使用spring框架时,开发过程中,可能发现各个版本的不同,而需要修改版本时,拷贝jar包到lib下的方法费时费力,而在maven的pom文件中直接修改版本号 ,maven便会帮你修改项目引用的jar包依赖。

  就这两点理由足够你选择maven进行jar包的版本管理了。当然,maven还可以将你的项目工程编译成jar包放入到版本库中,供别的项目依赖。其他功能,我还没有使用到,以后用到再进行添加。

  安装使用:

    下载maven,存放在固定文件夹下,并配置环境变量:%M2_HOME%\bin

    cmd进入控制台,mvn -version,查看是否配置成功。

  默认情况下,maven的配置信息有两种级别:用户级别、全局级别

  1.用户级别:只为某一个用户而设置,通常在${user.home}/.m2/settings.xml中进行设置。maven安装后,该文件夹中并没有这个xml文件,maven只是使用了默认配置,可以去maven的apache-maven-3.2.3\conf文件夹下,拷贝settings.xml文件到上述文件夹中,并修改相应的配置信息。

  2.全局级别:用来为该机器上的所有用户进行设置,假设他们都使用同样的maven安装程序。通常在${maven.home}/conf/settings.xml中进行设置。

这里需要了解maven何时并且如何使用这两个配置文件进行工作:???????????????????????????????????????

  配置内容:目前只需要配置本地仓库。

 <?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<!--配置本地仓库所在目录-->
<localRepository>D:\install\other\apache-maven-3.2.3\repository</localRepository>
</settings>

  这样就把远程仓库放在了D:\install\other\apache-maven-3.2.3\repository下了。

  myeclipse结合maven使用:

  myeclipse需要指定maven在你本机上的安装目录、你需要使用的配置文件的绝对路径。进入windows->preference,

  在installations选项卡下,选择maven的安装路径。

  在user settings选项卡下,选择配置文件的路径,你可以指定用户级配置文件,也可以指定全局级配置文件。

  myeclipse创建maven项目,添加项目依赖:

    最新的myeclipse多少有些bug,比如2013里debug时变量值、表达式值无法进行查看,等等问题的存在,工作过程中,我选择myeclipse10进行开发,使用myeclipse创建web project并添加maven依赖,这样创建的项目便可以使用maven进行jar包的版本控制了。如下图所示:

  

然后根据项目名称及公司名称,命名版本库及版本号。

这样就新建了maven项目。

  项目结构如下:

在pom.xml中添加依赖的jar即可。

  添加时,如果发现本地仓库没有相应jar包:

一、rebuild index本地仓库,这样会迫使maven从中央仓库中把jar包下载到本地仓库中

  使用myeclipse的maven repository来reindex仓库

在本地仓库上右键:rebuild index

二、在preference中的maven选项卡下,user settings中,update usersettings选项,这样可以迫使maven去中央仓库下载相应的jar文件到本地

  从外部引入的项目:

  从外部引入的项目,会发现本地仓库有些jar包并不存在。此时在项目上,右键,

  可能会发现此时并未将jar包添加到本地仓库中,但是你到jar包在本地仓库中的相应位置上可以看到,pom文件和sha1文件,说明已经讲jar包 的描述放到该仓库中,此时需要在maven repository窗口中,rebuild index,还可以在windows->preference下右键然后在maven的选项卡下update usersettings,也会从远程中央仓库中下载jar包到本地。这样就可以构建项目了。

maven添加jar包依赖的更多相关文章

  1. maven 如何给web项目添加jar包依赖

      maven 如何给web项目添加jar包依赖 CreateTime--2018年4月19日19:06:21 Author:Marydon 开发工具:eclipse 1.打开pom.xml文件--& ...

  2. Maven管理jar包依赖常出现的不能实例化类的问题

    you'ji 在maven管理jar包依赖时,存在一种常见的问题. pom.xml文件配置没问题,通过eclipse里中的maven dependencies查看,也确实有这个jar 包,或者这个类. ...

  3. Failed to read artifact descriptor for xxx:jar 的Maven项目jar包依赖配置的问题解决

    在开发的过程中,尤其是新手,我们经常遇到Maven下载依赖jar包的问题,也就是遇到“Failed to read artifact descriptor for xxx:jar”的错误. 对于这种非 ...

  4. 【maven】排除maven中jar包依赖的解决过程 例子:spring cloud启动zipkin,报错maven依赖jar包冲突 Class path contains multiple SLF4J bindings.

    一直对于maven中解决jar包依赖问题的解决方法纠结不清: 下面这个例子可以说明一个很简单的解决方法: 项目启动报错: Connected to the target VM, address: '1 ...

  5. Myeclipse如何使用Maven添加jar包

    很多新手都不知道如何在maven项目里添加jar包. 以前我还没接触maven的时候下载过一个demo,是maven项目. 我居然是照着他的pom.xml文件一个一个的写!!! 很多人认为理所当然的东 ...

  6. 自动配置pom文件,构建maven项目jar包依赖关系,找到jar包运用到jmeter

    首先说下pom文件特别方便的优点: 什么是pom文件? POM(Project Object Model) 是Maven的基础. 它是一个XML文件,包含了Maven用来build项目所需要的项目配置 ...

  7. STS(Spring Tool Suite)使用maven添加jar包

    打开:http://mvnrepository.com/ 搜索:hibernate 或者:http://search.maven.org 搜索:hibernate-core 两种方式都可以添加jar包 ...

  8. idea maven添加jar包

    在“项目结构“里设置 选择libaray,添加jar包

  9. maven 本地jar包依赖生成

    转载自:http://www.cnblogs.com/wuyouwulv/p/maven_configure_oracle_jdbc.html 由于Oracle授权问题,Maven不提供Oracle ...

随机推荐

  1. asp.net发布webservice出现‘Could not write to output file ‘解决办法

    Could not write to output file 'c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET File ...

  2. JAVA.IO流学习笔记

    一.java.io 的描述 通过数据流.序列化和文件系统提供系统输入和输出.IO流用来处理设备之间的数据传输 二.流 流是一个很形象的概念,当程序需要读取数据的时候,就会开启一个通向数据源的流,这个数 ...

  3. XPath 初步讲解

    2016-05-05 XPath是JavaScript 中节点查找手段,ie9以后的版本才支持w3c标准,其他浏览器基本支持.在e8之前的浏览器,通过基于 activeX的xml dom对象实现. 为 ...

  4. Apache使用mysql认证用户

    使用MySQL进行认证 第1步:下载MySQL认证模块,并更名为mod_auth_mysql.so文件,并保存在apache的modules目录下 第2步:apache要加载此功能模块 LoadMod ...

  5. eclispe 出现超内纯错误

    刚开始以为只要修改tomcat的最大最小内存就可以,结果还是报错,后来才懂需要在eclipse.ini文件中修改 -Xms256m-Xmx512m的值改大些,增加虚拟机运行的内存空间 刚开始最小值只有 ...

  6. UVa11384

    题意:给定正整数n,求把1,2,--,n中所有书都变成0的最少操作次数,每次操作可从序列中选择一个或多个整数,同时减去一个相同的正整数. 分析:如1,2,3,4,5,6, 第一步将4,5,6同时减4, ...

  7. poj 2431 Expedition

    Expedition Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 12980   Accepted: 3705 Descr ...

  8. 开启Windows的索引服务

    除开SearchEverything电脑内部的全硬盘搜索之外,如果要搜索文件内的内容的话,就无能为力的了.Window内置的索引服务就派上用场了,这么好的服务,默认设置居然是关闭的,想不通. 下面来介 ...

  9. java web中cookie的永久创建与撤销

    一.首先是创建cookie 当在数据库中查找知道所输入的用户名和密码正确之后,就开始创建: String cb=request.getParameter("cb");//cb就是登 ...

  10. 如何使用Git——(二)

    8.首次安装git,然后要把创建好的仓库放到github上,首先,你要先做一些基本设置,继续设置吧~~. 在git黑框框中输入  ssh-keygen -t rsa -C "your ema ...