maven学习笔记

作者: markouy | 来源:发表于2016-01-07 00:31 被阅读200次

maven学习笔记

2016年1月6日


一、maven安装

  • windows下maven安装

    1. 安装maven前,首先要确认正确的安装了JDK;
    2. 下载maven,访问下载
    3. 解压下载的maven;
    4. 配置maven环境变量:
      • M2_HOME:maven的安装目录(解压目录);
      • 设置path,在path末尾加上“%M2_HOME%\bin;” ;
    5. 验证maven安装,打开命令行窗口,输入如下命令:
      • echo %M2_HOME%
      • mvn -v
  • 基于UNIX的系统上安装maven

    1. 安装maven前,确认正确安装了JDK;

    2. 下载maven;

    3. 解压下载的maven:

      • tar -xvzf apache-maven-3.0-bin.tar.gz
      • 创建符号链接,以便日后升级:ln -s apache-maven-3.0 apache-maven
    4. 设置环境变量:

      • export M2_HOME=apache-maven

      • export PATH=$PATH:$M2_HOME/BIN

        一般来说,需要将这两个命令加入到系统的登录的shell脚本中,以Ubuntu为例,编辑~/.bashrc文件,添加这两行命令,这样每次启动一个终端,这些配置就能自动执行。

    5. 验证安装,打开终端,输入如下命令:

      • echo $M2_HOME
      • mvn -v
    6. 升级maven:下载新的maven压缩包,解压缩到之前旧版本的平行目录,然后更新符号链接即可,比如:

      • ln -s apache-maven-3.1 apache-maven
  • maven安装最佳实践

    1. 设置MAVEN_OPTS环境变量,运行mvn命令实际上是执行了java命令,所以运行java命令可用的参数也可以在运行mvn命令是可用,这时候MAVEN_OPTS环境变量就可以派上用场,通常需要设置MAVEN_OPTS的值为-Xms128m-Xmx512m,因为java默认的最大可用内存往往不够满足maven运行的需要,如果没有该配置,则很容易得到内存溢出的错误。MAVEN_OPTS的配置方式参考M2_HOME的配置方式。
    2. 配置用户范围的setting.xml,maven用户可选择配置$M2_HOME/conf/setting.xml或者~/.m2/setting.xml,前者是全局的,而后者则是用户范围的。
    3. 不要使用IDE内嵌的Maven。IDE内嵌的maven往往会和在命令行使用的maven不是同一个版本,容易造成一些难以理解的问题,并且可能造成构建行为的不一致。因此应该在IDE中配置maven插件时使用与命令行一致的maven。在m2eclipse环境中,单击菜单栏的windows,然后选择preferences,在弹出的对话框中,展开左边的maven项,选择installaction子项,在右边的面板中,能够看到一个默认的embedded maven安装被选中了,单击add按钮,然后选中maven安装目录m2_home,添加完毕后选中这个外部的maven。

二、maven目录分析

  • bin:该目录包含了mvn运行的脚本;
  • boot:该目录包含一个类加载器框架,相对于默认的java类加载器,它提供了更丰富的语法以方便配置,maven使用该框架加载自己的类库。
  • conf:该目录包含一个非常重要的文件setting.xml。直接修改该文件,就能再机器上全局的定制maven的行为,一般情况下,更倾向于复制该文件至/.m2/(表示用户目录)目录下,然后修改该文件。
  • lib:该目录包含了所有maven运行时需要的java类库。

三、设置HTTP代理

  1. 首先确认自己无法直接访问公共的maven中央仓库。直接运行命令:

    • ping repo1.maven.org
  2. 编辑~/.m2/setting.xml文件(如果没有该文件,则复制$M2_HOME/conf/setting/xml)。添加代理配置如下:

     <settings>   
         ......
       <proxies>
         <proxy>
             <id>my-proxy</id>
             <active>true</active>
             <protocol>http</protocol>
             <host>210.14.234.12</host>
             <port>2135</port>
             <!--  
             <username>***</username>
             <password>***</password>
             <nonProxyHosts>repository.mycom.com|*.google.com</nonProxyHosts>
             -->
         </proxy>
       </proxies>
       ......
     </settings>`
    

proxies下可以有多个proxy元素,如果声明了多个proxy元素,则默认情况下第一个被激活的proxy会生效。其中nonProxyHosts用于指定哪些主机名不需要代理,可以使用“|”符号来分隔多个主机名。该配置也支持通配符。

四、安装m2eclipse

以eclipse3.6为例讲解m2eclipse的安装:

  1. 启动eclipse,选择菜单栏中得Help,然后选择Install New Software;
  2. 单击work with字段边上的Add按钮,在弹出的新的add repository对话框的name字段中输入m2e,在location字段中输入http://m2eclipse.sonatype.org/sites/m2e,然后单击ok按钮。eclipse会下载m2eclpise安装站点上得资源信息。
  3. 待完成【TODO】;

相关文章

  • maven学习笔记

    maven学习笔记 2016年1月6日 一、maven安装 windows下maven安装安装maven前,首先要...

  • 自动化构建工具Maven

    该心得全部来源于菜鸟教程-maven以及尚硅谷Java视频教程_Maven的学习过程笔记。 Maven:一个纯Ja...

  • maven学习笔记

    什么是maven maven是基于项目对象模型(Project·Object·Model --> POM),可以通...

  • Maven学习笔记

    简述 Maven在我们的目前的工作中是使用最广泛的工具之一,它在我们编译,打包,部署等等各个环节都发挥着非常重要的...

  • Maven学习笔记

    Maven概述 Maven定义Maven是一个项目管理和整合,统一管理jar包的工具;Maven为开发者提供了一套...

  • Maven学习笔记

    自动建立目录骨架 Maven创建目录的两种方式:1.archetype:generate 按照提示进行选择。2.a...

  • maven学习笔记

    构建命令介绍 mvn -v 查看maven版本 mvn compile 编译 mvn test 测试 mvn...

  • Maven学习笔记

    阅读《Maven实战》许晓斌的一些笔记,便于自己和道友查阅 maven依赖 maven具有传递性依赖,比如 A 依...

  • Maven学习笔记

    maven构件:artifact 生命周期阶段:phase 插件:plugin ->:单个或多个目标的集合 插件目...

  • Maven学习笔记

    引言:Mavne相必大多数java开发者都比较熟悉;可以将它理解为一个项目的管理工具,它是一个可以两三行代码就可构...

网友评论

    本文标题:maven学习笔记

    本文链接:https://www.haomeiwen.com/subject/owamhttx.html