`
jiagou
  • 浏览: 2533134 次
文章分类
社区版块
存档分类
最新评论

Maven简介与安装

 
阅读更多

1、什么是Maven

Maven这个单词来自于意第绪语,意为知识的积累,最早在Jakata Turbine项目中它开始被试图用来简化构建过程。

Maven是一个跨平台的项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。

Maven主要服务于基于Java平台的项目构建、依赖管理和项目信息管理。

2、Maven的目标

Maven的主要目标是让开发人员在最短的时间内领会一个开发工作的健康状态,为了实现这个目标,Maven试图处理以下几个方面的内容:

(1)使项目构建过程更容易

虽然使用Maven不能够完全消除对底层机制的了解需要,Maven确实屏蔽了大量的细节。

(2) 提供统一构建系统(编译、测试、持续整合...)

Maven允许一个项目来构建和使用其项目对象模型(POM)和所有使用Maven的项目共享的插件集,并提供一个统一的构建系统。一旦你熟悉如何构建一个Maven项目你自然就会知道所有Maven项目是如何构建的,这样当你试图操纵许多项目时节约你大量的时间。

(3) 提供高质量的项目信息(依赖、报告、site...)

Maven提供了大量有用的项目信息,这些信息部分是从您的POM文件获取的,部分是从你的项目的源代码产生的例如,Maven可以提供

a. 更改日志文件直接从源头控制创建
b. 交叉引用来源
c. 邮件列表
d. 依赖列表
e. 单元测试报告,包括覆盖率

随着Maven的改进,提供的信息集也会跟着改进,所有的这些对于Maven用户来说是透明的。

其他产品也可以提供Maven插件让他们的项目信息集和Maven提供的标准信息一起仍然基于POM

(4) 提供开发的最佳实践指南

Maven目的在于收集当前的最佳开发实践原则这个方向让它很容易地引导项目

例如,单元测试的规范,执行和报告是使用Maven正常构建周期一部分当前单元测试的最佳实践指引如下

a.让您的测试代码一个单独的但平行源代码树下

b. 使用测试用例的命名约定来查找并执行测试

c. 测试用例设置自己的环境并且不依赖于定制生成的测试准备

Maven也旨在协助项目工作流程,如版本管理和问题跟踪

Maven对于如何设计你的项目的目录结构业提出了一些指导,这样一旦你学会了这种设计您就可以轻松地浏览任何其他使用Maven和相同设置的项目

(5) 能无缝的加入新的特性

Maven提供了一种简单的方法更新Maven客户,使他们能够利用Maven自身的任何变化因此安装新的或升级第三方插件Maven本身变得微不足道的。

3、Maven功能概括

以下是Maven的主要功能概括:
a. 遵循最佳实践的简单项目设置 -- 可以在数秒钟内得到一个新的项目或模块
b. 在所有项目中一致的使用意味着新进入项目的开发人员能够更快上手
c. 优秀的依赖管理,包括自动更新,依赖闭包(也称为传递依赖)
d. 能够
很容易地同时与多个项目一起工作
e.
一个庞大且不断增长的开箱即用库和元数据的存储库,以及最大的开源项目的最新版本的实时可用性维护。
f.
可扩展并且能够方便地使用Java和脚本语言编写插件
g.
使用很少或根本不用额外的配置就能即时访问新的功能
h. Maven之外的依赖管理和部署的Ant任务。
i. 基于模型的构建:Maven可以构建任意数量的项目到预定义的输出类型,如JAR,WAR,或基于元数据发布项目,在大多数情况下不需要任何的脚本。
j.
相干网站项目信息:通过在构建过程中使用相同的元数据,Maven能够生成一个网站或PDF包括任何你想添加的文件,并增加了项目开发进度的标准报告。
k.
发布管理和分销出版:无需太多额外配置,Maven将集成源代码控制系统如CVS并根据特定标签管理项目的发布。它也可以发布到其他项目使用的发布位置Maven能够发布独立的输出,如JAR,包括其他依赖和文档的归档,或源代码分发。
l. 依赖管理:Maven鼓励使用中央存储库的JAR文件和其他的依赖。Maven带有一种机制能够让你项目的客户从中央JAR仓库下载构建项目所需的JAR文件,这很像Perl的CPAN库。这使得Maven用户在多个项目中重用的JAR文件,并鼓励项目之间的沟通以确保向后兼容性问题的处理。

4、安装配置Maven

(1)Windows安装

a. 确认已经正确安装JDK。

b. 下载最新版本的Maven,即apache-maven-3.0.4-bin.zip,下载地址是:http://maven.apache.org/download.html

c. 解压,我把解压后的目录放在D:\Program Files下。

d. 设置环境变量。新建一个系统变量M3_HOME,值为:D:\Program Files\apache-maven-3.0.4。在系统变量里找到Path,点击编辑,添加变量值"%M3_HOME%\bin".注意:多个值之间需要有分号隔开。

e. 注意Path环境变量。当我们在cmd中输入命令时,Windows首先会在当前目录中寻找可执行文件或脚本,如果没有找到,Windows会接着遍历环境变量Path中定义的路径。安装好之后,在使用mvn -v命令来检查配置是否正确。如果安装无误,将会显示Maven的版本信息。

(2)Linux安装

a.下载最新版本的Maven,即apache-maven-3.0.4-bin.tar.gz,下载地址是:http://maven.apache.org/download.html

b. 解压到本地目录: tar -zxvfapache-maven-3.0.4-bin.tar.gz。

c. 解压后Maven安装目录为apache-maven-3.0.4。虽然直接使用该目录配置环境变量之后就能直接使用Maven了,但推荐在安装目录旁平行地创建一个符号链接,以方便升级(直接把链接指向新版本):ln -s apache-maven-3.0.4apache-maven

d. 设置环境变量:export M3_HOME=/home/jackie/Software/apache-maven

export PATH=$PATH:$M3_HOME/bin

一般来说,需要将以上两行命令添加到系统的登录shell脚本中去,这样每次启动一个终端,这些配置就能自动执行。

5、Maven安装目录

(1)bin:该目录包含了mvn运行的脚本,这些脚本用来配置Java命令,准备好classpath和相关的Java系统属性,然后执行Java命令。其中mvn是基于UNIX平台的shell脚本,mvn.bat是基于Windows平台的批处理文件。同理mvnDebug和mvnDebug.bat分别是UNIX平台和Windows平台的脚本。mvnDebug比mvn多了一条MAVEN_DEBUG_OPTS配置,其作用就是在运行Maven时开启debug,以便调试Maven本身。该目录还包含m2.conf文件,这是classworlds的配置文件。

(2)boot:该目录只包含一个文件,即plexus-classworlds-2.4.jar。plexus-classworlds是一个类加载器框架,相对于默认的java类加载器,它提供了更丰富的语法以方便配置,Maven使用该框架架在自己的类库。

(3)conf:该目录只包含一个settings.xml。直接修改该文件,就能在机器上全局的定制Maven行为。推荐做法是复制该文件至用户目录下的.m2目录下,然后修改该文件,在用户范围定制Maven行为。

(4)lib:该目录包含了所有Maven运行时需要的Java类库,Maven本身是分模块开发的。

(5)LICENSE.txt:该文件记录了Maven使用的软件许可证Apache License Version 2.0。

(6)NOTICE.txt:记录Maven包含的第三方软件。

(7)README.txt:包含Maven的简介,包括安装需求及如何安装的简要指令等。


6、Maven安装最佳实践

(1)设置MAVEN_OPTS环境变量

通常需要设置MAVEN_OPTS的值,因为Java默认的最大可用内存往往不能够满足Maven运行的需要,比如项目较大时,使用Maven生成站点需占用大量内存,如果无此配置,很容易得到java.lang.OutofMemeoryError。所以推荐一开始就配置该变量。

(2)配置用户范围settings.xml

为避免影响系统其他用户,推荐使用用户范围的settings.xml,而且便于Maven升级。

(3)不要使用IDE内置的Maven

Eclipse有一个内置的Maven,不一定稳定,而且我们经常会使用命令行的Maven,所以推荐在Eclipse中配置Maven插件时使用与命令行一致的Maven。







分享到:
评论

相关推荐

    maven 安装与使用

    maven 构建框架的安装手册和使用简介

    Maven介绍与安装和配置

    Maven 安装与配置 Maven是一个基于 Java 的项目管理工具,因此最基本的要求是在计算机上安装 JDK。 Maven 对系统要求如下表: JDK JDK 7.0 及以上。 内存 没有最低要求。 磁盘空间 Maven 安装本身大约需要 10MB。除...

    maven笔记1.pdf

    maven简介、maven安装使用、maven命令使用的详细说明(图文教程) maven简介、maven安装使用、maven命令使用的详细说明(图文教程) maven简介、maven安装使用、maven命令使用的详细说明(图文教程) maven简介、maven安装...

    Maven实战 安装配置

    第1章 Maven简介3.1.1 何为Maven4.1.2 为什么需要Maven5.1.3 Maven与极限编程6.第2章 Maven的安装和配置7.2.1 在Windows上安装Maven8.2.2 在基于Unix的系统上安装Maven9.2.3 安装目录分析10.2.4 设置HTTP代理11.2.5 ...

    详细的maven教程(Maven 的安装与配置)

    详细的maven教程。适合初学者对于maven的安装配置以及常用命令简介

    1.1.maven简介.mp4

    1.1.maven简介 1.2.maven的作用 1.3.maven的安装 2.项目案例 2.1.构建项目 2.2.项目拆分 3.聚合和继承 3.1.聚合 3.2.继承 4.maven高级特性 4.1.属性配置 4.2.版本管理 4.3.资源管理 5.私服 5.1.nexus安装 5.2.仓库的...

    Eclipse整合Maven开发教程

    1. Maven简介 1 2. 安装Maven 1 3. 集成配置 4 3.1 让Eclipse支持集成Maven 4 3.2 增加Maven安装版本 5 3.3 配置Maven仓库 6 4. 开发应用 8 4.1 新建工程 8 4.2 Maven生命周期 13 4.3 Run As 15 4.4 ...

    Maven介绍安装配置坐标依赖等等

    Maven简介,maven与ant比较,windows下安装配置,坐标依赖,仓库,部署第三方构建

    Maven实战- 入门

    第 1 章 Maven 简介 3. 1.1 何为 Maven 4. 1.2 为什么需要 Maven 5. 1.3 Maven 与极限编程 6. 第 2 章 Maven 的安装和配置 7. 2.1 在 Windows 上安装 Maven 8. 2.2 在基于 Unix 的系统上安装 Maven 9. 2.3 安装目录...

    Maven实战(高清版)

    maven简介1.1 何为maven1.1.1 何为构建1.1.2 maven是优秀的构建工具1.1.3 maven不仅仅是构建工具1.2 为什么需要maven1.2.1 组装pc和品牌pc1.2.2 ide不是万能的1.2.3 make1.2.4 ant1.2.5 不重复发明轮子1.3...

    Maven3实战视频教程(14集)

    课程目录: Maven3_01_maven概览 Maven3_02_maven安装的注意事项 ...Maven3_10_生命周期和插件简介 Maven3_11_插件基础 Maven3_12_插件的应用 Maven3_13_测试 Maven3_14_发布web项目 Maven3实战笔记 Maven配置

    项目管理工具Maven从基础到高级应用视频教程

    1.Maven简介 2.下载与安装 3.Maven基础概念(重点) 4.第一个Maven项目(手工制作) (重点) 5.第一个Maven项目(IDEA生成)(重点) 6.依赖管理(重点) 7.生命周期与插件 8.分模块开发与设计(重点) 9.聚合...

    Maven使用讲解.ppt

    Maven使用讲解.ppt Maven简介及安装 Maven基本使用 Maven基本概念 POM介绍 Maven多模块项目 Maven插件应用 Maven仓库

    高效构建Java应用:Maven入门和进阶

    - [一、Maven简介和快速入门](#一Maven简介和快速入门) - [1.1 Maven介绍](#11-Maven介绍) - [1.2 Maven主要作用理解](#12-Maven主要作用理解) - [1.3 Maven安装和配置](#13-Maven安装和配置) - [二、基于IDEA的...

    Maven2 的新特性.7z

    安装Maven2的步骤非常简单:首先从Maven官方网站下载相应的软件包,目前是Maven 2.0.1;然后解压,并设置环境变量M2_HOME= Maven2的解压安装目录;最后将%M2_HOME%/bin添加到path中,方便Maven在任何目录下运行。 ...

    Maven权威指南 很精典的学习教程,比ANT更好用

    2. 安装和运行Maven 2.1. 验证你的Java安装 2.2. 下载Maven 2.3. 安装Maven 2.3.1. 在Mac OSX上安装Maven 2.3.2. 在Microsoft Windows上安装Maven 2.3.3. 在Linux上安装Maven 2.3.4. 在FreeBSD或OpenBSD上...

    maven 培训

    Maven 学习 Maven简介 Maven安装 用maven创建第一个java工程 生成eclipse工程文件 下载maven的eclipse插件 导入工程

    maven使用详解

    1、 maven技术简介 2、 maven快速入门 (安装配置、 常用命令) 3、 在Eclipse基于(插件)maven构建项目 4、 maven配置详解 (难点) 案例:将仓库管理系统,重构maven结构

    Maven权威指南中文版(完整)

    2. 安装和运行Maven ..................................................... 10 2.1. 验证你的Java安装 ............................................. 10 2.2. 下载Maven .........................................

Global site tag (gtag.js) - Google Analytics