在Windows上安装Maven:

   1.  首先检查安装JDK

通过命令行运行命令:echo %JAVA_HOME%和 java  -version,能够查看当前java的安装文件夹及java的版本号,maven要求JDK的版本号必须在1.4以上。

   2. 下载Maven
前往maven的下载页面:http://maven.apache.org/download.cgi下载最新或稳定版的maven,如:apache-maven-3.2.3-bin.zip。
   3. 安装Maven
将压缩文件解压到你想要安装的文件夹下,比方我的路径是:D:\workspace\study\apache-maven-3.2.3。然后在系统的环境变量中新建一个变量,变量名为M2_HOME,变量值为Maven的安装文件夹 D:\workspace\study\apache-maven-3.2.3。  
   
 
然后在系统变量path的末尾加上 %M2_HOME%\bin,如

做这些步骤的意义是,以后我们再命令行中输入命令时windows会自己主动在maven的安装文件夹\bin文件夹中扫描相关的命令。
     4. 检查maven安装
通过输入echo %M2_HOME%和mvn -v 来查看maven的安装文件夹及查看maven的版本号。

     5. maven更新
maven更新直接把新的maven解压,然后改动M2_HOME用户变量指向新的安装文件夹就可以。

安装文件夹分析:

     1. M2_HOME
     在M2_HOME所指向的文件夹下,有例如以下的内容:

  • bin

在该文件夹下包括了mvn的执行脚本,这些脚本用来配置java命令,准备classpath和相关的Java系统属性,然后执行java命令。在windows下经常使用的有mvn.bat 和 mvnDebug.bat,这两个文件由什么关系呢?两个文件基本一样,仅仅是mvnDebug比maven多了一条MAVEN_DEBUG_OPTS的配置,其作用就是在执行Maven时开启debug,以便调试Maven本身。

  • boot
     该文件夹仅仅包括一个文件,以我当前的版本号为例,该文件为plexus-classworlds-2.5.1.jar,plexus-classworlds是一个类载入器,相对于默认的java类载入器,它提供了更丰富的语法以方便配置,maven使用该载入框架载入自己的类库。普通用户无需关心此文件。
  • conf
     该文件夹包括了一个很关键的文件settings.xml,直接改动该文件,就能在机器上全局定制Maven的行为。普通情况下,我们更偏向于复制该文件至~/.m2/文件夹(~表示用户文件夹),然后在用户范围(而非独立于maven安装文件)定制Maven的行为。然后将慢慢分析当中的各个元素。
  • lib
     该文件夹包括了全部Maven执行时须要的Java类库,maven本身是分模块进行开发的,因此能够看到诸如maven-core-3.2.3.jar和maven-model-3.2.3.jar之类的文件,此外还能够看到maven用到的第三方依赖。能够说,lib文件夹就是真正的maven。

    2. ~/.m2
     我们先执行一条简单的命令:mvn help:system,该命令会打印出全部的Java系统属性和环境变量,执行这条命令的目的是让Maven执行一个真正的任务。我们能够从命令行输出看到Maven会下载maven-help-plugin,包含pom文件和jar文件。这些文件都被下载到了Maven本地仓库中。
     如今打开当前用户文件夹,在我的windows7中文件夹为C:\Users\chenlei.cl,在该文件夹下能够看到.m2文件夹,默认情况下该文件夹放置了Maven本地仓库.m2/repository。全部的Maven构件都被储存到该仓库中,以方便重用。能够到~/.m2/reposi-tory/org/apache/maven/plugins/maven-help-plugins/文件夹中找到刚才下载的maven-help-plugin的pom文件和jar文件。maven依据一套规则来确定不论什么一个构件在仓库中的位置(依据所谓的坐标),在后面章节会具体讲到。

安装m2eclipse:

     m2eclipse是eclipse下一款十分强大的maven插件。
     启动eclipse之后,在菜单中选择Help,然后选择Install New Software...,接着会看到一个Install对话框。单击Work with:字段边上的Addbutton,会弹出一个新的Add Repository对话框。在name字段中输入m2e,在location字段中输入http://download.eclipse.org/technology/m2e/milestones/1.6
,(似乎最新版的Eclipse已经自带了m2eclipse), 然后单击OKbutton。Eclipse会下载m2eclipse安装网站上的资源信息。等待资源加载完毕之后,再将其所有展开,就能看到例如以下图所看到的的界面。

选择对应的组件之后,一路向下就可以。注意在下载过程中,可能会下载一些相关联的其它组件。

  卸载m2eclispe:
     进入eclipse->help->Installation Details->Installed Software中选择m2eclipse相关的组件进行卸载就可以。

Maven安装最佳实践:

     1. 设置MAVEN_OPTS环境变量
     通常可以设置MAVEN_OPTS的值为 -Xms128m -Xms512m,由于Java默认的最大可用内存往往不可以满足Maven执行的须要,比方在项目较大时,使用Maven生成项目网站须要占用大量的内存,假设没有该配置,则非常easy得到java.lang.OutOfMemeoryError,因此一開始就配置该变量是推荐的做法。
     2. 配置用户范围settings.xml
     Maven用户能够选择配置$M2_HOME/conf/settings.xml或者~/.m2/settings.xml,前者是全局范围的,整台机器上的全部用户都会直接受到该配置的影响,而后者是用户范围的,仅仅有当前用户才会受到该配置的影响。Maven会默认先使用~/.m2/settings.xml,假设不存在才会去使用$M2_HOME/conf/settings.xml。
     推荐使用用户范围的settings.xml,主要是为了避免无意识地影响到系统中的其它用户,并且为了以后maven升级的方便,直接把配置文件从仓库拷过去就能够了。
     3. 不要使用IDE内嵌的Maven
     当eclipse集成Maven时,会安装上一个内嵌的eclipse,这个eclispe一般会比較新,但不一定非常稳定,往往和命令行使用的Maven不是同一个版本号。这里又会出现两个潜在的问题:首先,较新版本号的Maven存在非常多不稳定的因素,easy造成一些难以理解的问题;其次,除了IDE,也常常还会使用命令行的Maven,假设版本号不一致,easy造成构建行为的不一致。因此在IDE中配置Maven插件时使用与命令行一致的Maven。
     在m2clipse环境中,单击菜单条中的Windows,然后选择Preferences,在弹出的对话框中,展开左边的Maven项,选择Installation子项,在右边的面板中,可以看到有一个默认的Embedded Maven安装被选中了。单击Add...button,然后选择Maven安装文件夹M2_HOME,加入完成之后选择这一个外部的Maven。


Maven学习笔记(二) :Maven的安装与配置的更多相关文章

  1. (转)Maven学习总结(二)——Maven项目构建过程练习

    孤傲苍狼 只为成功找方法,不为失败找借口! Maven学习总结(二)——Maven项目构建过程练习 上一篇只是简单介绍了一下maven入门的一些相关知识,这一篇主要是体验一下Maven高度自动化构建项 ...

  2. MAVEN学习笔记之Maven生命周期和插件简介(3)

    MAVEN学习笔记之Maven生命周期和插件简介(3) clean compile site三套生命周期相互独立. clean pre-clean 执行清理前的工作 clean 清理上一次构建生成的所 ...

  3. MAVEN学习笔记之Maven插件的应用(4)

    MAVEN学习笔记之Maven插件的应用(4) <build> <pluginManagement> <plugins> <plugin> <gr ...

  4. HBase学习笔记之HBase的安装和配置

    HBase学习笔记之HBase的安装和配置 我是为了调研和验证hbase的bulkload功能,才安装hbase,学习hbase的.为了快速的验证bulkload功能,我安装了一个节点的hadoop集 ...

  5. maven学习笔记二(了解maven的基本命令)

    maven常用的命令 mvn archetype:create 创建Maven项目 mvn compile 编译源代码 mvn deploy 发布项目 mvn test-compile 编译测试源代码 ...

  6. Maven学习总结(二)——Maven项目构建过程练习

    上一篇只是简单介绍了一下maven入门的一些相关知识,这一篇主要是体验一下Maven高度自动化构建项目的过程 一.创建Maven项目 1.1.建立Hello项目 1.首先建立Hello项目,同时建立M ...

  7. Maven系列(二)之安装和配置详解

    检查JDK环境 在安装Maven之前,首先要确认你已经正确安装了JDK.Maven可以运行在JDK 1.4及以上的版本上. 打开cmd输入: java -version 下载Maven Maven官网 ...

  8. Maven学习笔记:Maven简介

    Maven的概念 Maven是基于项目对象模型(POM,Project Object Model),可以通过描述信息来管理项目的构建,报告和文档的软件管理工具 Maven除了以程序构建能力为特色之外, ...

  9. Git学习笔记(1)——安装,配置,创建库,文件添加到库

    初次接触git,为了记忆深刻,把学习的简单流程记录下来. 本文记录了Git在Ubuntu上的安装,配置,以及创建版本库和往库中添加文件的过程. 1.Git的安装:(Ubuntu-Linux非常友好的安 ...

随机推荐

  1. 算法:合并排序(Merge Sort)

    算法定义 合并排序是一种递归算法,思路如下: 如果源数组长度为 1,立即返回. 将源数组平分为两个新数组:Left 和 Right. 对 Left 执行递归排序. 对 Right 执行递归排序. 将排 ...

  2. 通过http请求传递xml流和接收xml流的代码示例

    通过http请求传递xml流和接收xml流的代码示例 //1.在servlet中post一个xml流:import java.io.OutputStreamWriter;import org.jdom ...

  3. Oracle WIHT AS 用法

    1.with table as 相当于建个临时表(用于一个语句中某些中间结果放在临时表空间的SQL语句),Oracle 9i 新增WITH语法,可以将查询中的子查询命名,放到SELECT语句的最前面. ...

  4. 怎样让你的APK跑在 com.android.phone 进程

    首先:为什么要跑在 com.android.phone 进程 这还用问,在同一个进程里就能够干非常多事情了这是黑客行为 为什么能跑在统一进程? Google 在设计 Dalivk 虚拟机的时候就考虑到 ...

  5. [Linux] Linux 守护进程的启动方法

    reference : http://www.ruanyifeng.com/blog/2016/02/linux-daemon.html "守护进程"(daemon)就是一直在后台 ...

  6. mini-parser

    https://leetcode.com/problems/mini-parser/ /** * // This is the interface that allows for creating n ...

  7. Oracle—RMAN完全恢复

    一.RMAN完全恢复的相关概念 1.在RMAN完全恢复中主要使用两个命令,一个是restore,另一个是recover. 2.可以在三个级别恢复,数据库,表空间,数据文件. 3.RMAN中应对于各种情 ...

  8. [leetcode]Construct Binary Tree from Inorder and Postorder Traversal @ Python

    原题地址:http://oj.leetcode.com/problems/construct-binary-tree-from-inorder-and-postorder-traversal/ 题意: ...

  9. STL List::sort() 解析

    看侯捷翻译那本<STL源码剖析>中list内置sort的算法,书中注释说是quick sort,看了半天没看明白, template <class T, class Alloc> ...

  10. 【SDN】SDN相关资料--了解一下电信领域的SDN

    SDN相关资料 数据中心架构下ospf bgp如何选择及优缺点? - 数据中心 - 知乎 组播扩展OSPF_百度百科 carrier.huawei.com/cn/products/fixed-netw ...