简介
最早接触maven的时候大概是2007年,在一些工程的应用中需要应用到maven。因为没接触过感觉很新鲜,最开始也没感觉到它的作用和优点。在后来的工作中陆续也接触到它,一直没来得及好好的总结一下。这里针对maven的一些基本概念和应用做一个总结。也希望对后续项目的开发做一个简单的指导。
和ant的比较
在用maven之前曾经用过一段时间的ant,同样作为管理依赖关系和编译源代码的工具,maven看起来显得很奇怪。在使用ant做开发的时候一般是找到项目中所需要使用的jar包,然后下载到本地的lib文件夹中,然后在build.xml中定义各种依赖关系和引用。这种开发的方式有一个问题就是我们每次引用到需要的类库时,需要将它们都加入到源代码管理系统里,方便到其他环境下配置和执行。这样会使得需要管理的源代码比较庞大。另外,如果我们自定义的一些类库需要更新时也是一个问题。很多时候编译的结果就是一个jar包,需要把最新的拷到目的环境去做机械的替换。
相对来说,maven可以定义对各种类库的依赖,这些依赖的类库不需要事先下载下来保存到本地,它们只需要定义在一个pom.xml文件里就可以了。在执行编译的时候通过从maven的在线库里将对应的库下载到本地,然后再执行编译和运行。另外,在maven里也可以指定依赖库的版本,这样可以保证不会出现选择错误版本的库。
安装和配置
前面做了一个简单的比较,好了,现在不废话,整点实在的。和ant的安装比较类似,根据我们环境的不同,我们可以选择自动安装或者手动下载配置两种方式。以我本地环境ubuntu系统为例,分别讨论两种安装配置的方式:
自动安装配置
在ubuntu下面安装maven的方式很简单,只要执行如下命令就可以:
sudo apt-get install maven
然后系统就会提示输入管理员密码,接着进行自动化的配置和安装。
执行完之后,我们如果执行命令:
mvn -v
则会显示如下的结果:
frank@frankpc:~$ mvn -v Apache Maven 3.0.4 Maven home: /usr/share/maven Java version: 1.7.0_65, vendor: Oracle Corporation Java home: /usr/lib/jvm/java-7-openjdk-amd64/jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux", version: "3.13.0-43-generic", arch: "amd64", family: "unix"
这里表示我们安装的maven版本是3.0.4,以及对应的java版本以及linux内核信息。
手动下载安装
手动下载安装的过程也很简单,首先去如下网站 http://maven.apache.org/,然后在download里面选择一个版本下载。目前最新的版本是3.2.3。下载到本地解压后的文件夹结构如下:
这里的两个文件夹比较重要,一个是bin, 里面是我们执行的各种maven的命令。另外一个是conf目录,里面保存着针对环境的具体系统配置。比如我们设置依赖库下载的proxy,我们下载的类库保存在哪个地方。这些东西都需要在这里找。
在解压到指定目录后,我们要想在命令行执行maven命令只需要设定一个环境变量PATh就可以了。一般情况下可以通过修改~/.profile文件,在里面增加一行:
export PATH=$PATH:~/pathtomaven/bin
在具体的环境里将pathtomaven替换成maven所在的目录就可以了。
基本配置
经过前面的步骤之后,基本上已经安装好maven了。这里再针对一些特定的配置做一个讨论。一般我们如果是手动安装好maven后,我们需要做一些特定的配置,就需要修改配置文件。在手动安装的环境里,这个配置文件就是conf目录下的settings.xml。
如果是通过命令行自动安装的话,这个配置文件所在的目录如下:
/usr/share/maven/conf
里面的settings.xml文件比较大,这里截取一部分:
<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"> <pluginGroups> <!-- pluginGroup | Specifies a further group identifier to use for plugin lookup. <pluginGroup>com.your.plugins</pluginGroup> --> </pluginGroups> <proxies> <proxy> <id>optional</id> <active>true</active> <protocol>http</protocol> <username>proxyuser</username> <password>proxypass</password> <host>proxy.host.net</host> <port>80</port> <nonProxyHosts>local.net|some.host.com</nonProxyHosts> </proxy> --> </proxies> <servers> <server> <id>deploymentRepo</id> <username>repouser</username> <password>repopwd</password> </server> </servers> <mirrors> <mirror> <id>mirrorId</id> <mirrorOf>repositoryId</mirrorOf> <name>Human Readable Name for this Mirror.</name> <url>http://my.repository.com/repo/path</url> </mirror> --> </mirrors> <profiles> </profiles> </settings>
这里默认标注的几个xml节点分别用来设定.m2文件夹的位置以及proxy等信息。在默认的情况下,.m2文件用来保存我们下载的所有库文件,而且它就在当前用户所在的根目录下。
这样,一个maven的安装和基本配置就完成了。
参考材料
http://maven.apache.org/index.html
http://www.mkyong.com/tutorials/maven-tutorials/
http://stackoverflow.com/questions/3724415/maven-artifact-and-groupid-naming
http://www.amazon.com/Introducing-Maven-Balaji-Varanasi/dp/1484208420/ref=sr_1_1?s=books&ie=UTF8&qid=1418526437&sr=1-1&keywords=introducing+maven
相关推荐
** Maven学习记录(一):安装与环境配置 ** Maven是Java开发中不可或缺的构建工具,它通过统一的项目对象模型(Project Object Model,POM)管理项目的构建、报告和依赖关系,极大地简化了项目的构建流程。这篇...
### 如何在MyEclipse上安装与配置Maven3 #### 环境准备 在开始配置Maven之前,确保已经正确安装并配置了以下环境: - **JDK1.6**:Maven依赖于Java运行环境,因此需要先安装JDK。 - **Maven3.0.4**:这是本教程使用...
通过上述步骤,我们不仅了解了如何下载、安装和配置Maven,还学习了如何利用Maven构建和管理Java项目。Maven的强大功能使得开发者能够更加专注于业务逻辑的开发,而非繁琐的构建过程。此外,Maven还提供了丰富的插件...
在本文中,我们将深入探讨Maven的学习、配置和安装步骤,以帮助初学者快速掌握这一强大的工具。 **一、Maven简介** Maven是由Apache软件基金会开发的一个项目管理工具,它的核心理念是通过一个统一的构建文件(pom....
- **安装**:需要先安装 JDK,然后解压缩 Maven,配置 MAVEN_HOME 和 PATH 环境变量。 - **配置 Maven**:包括全局配置文件(%MAVEN_HOME%/conf/settings.xml)和用户配置文件(~/.m2/settings.xml)。全局配置文件...
### JDK和Maven安装配置详解 #### 一、JDK安装与配置 ##### 1. JDK 安装步骤 JDK (Java Development Kit) 的安装通常较为简单直观,大多数情况下,只需要按照安装向导提示进行即可。对于 JDK 1.5(即 Java 5)的...
【 Maven 安装和 Eclipse 集成】 Maven 是一个强大的项目管理和构建工具,它主要负责管理项目构建、依赖关系以及项目的生命周期。Maven 的核心功能是通过使用 Project Object Model (POM) 文件来自动解决项目的依赖...
** Maven安装与配置详解 ** ...总结,Maven作为Java开发的重要工具,其安装、配置、使用及管理依赖的方式对于提高开发效率具有重要意义。理解并熟练掌握Maven的使用,将有助于你在Java开发过程中更加得心应手。
【Maven 3.0 学习文档】 Maven 是一个强大的项目管理和自动化构建工具,主要应用于Java项目。它的核心理念是Project Object Model (POM),这是一个XML格式的配置文件,用于描述项目的元数据,包括项目的依赖、构建...
Maven是Java开发中的一款...总结,Maven作为Java开发的强大工具,通过简单的配置和约定,帮助开发者高效地管理项目、依赖和构建流程。熟练掌握Maven的安装、配置和使用,能极大提高开发效率,使得团队协作更加顺畅。
** Maven 概述** Maven 是一个强大的项目管理和构建工具,广泛应用于Java开发领域。...通过深入学习 `maven基本配置.docx` 文件,您可以进一步熟悉 Maven 的具体配置细节,从而更好地应用在实际项目中。
总结,本手册提供了详细的Maven 3安装和配置指南,包括介质下载、环境变量设置、配置文件修改等,以帮助用户顺利搭建开发环境。通过遵循这些步骤,开发者可以高效地利用Maven进行项目管理,实现自动化构建,从而提高...
【 Maven 下载、安装、配置与使用教程】 Maven 是一个强大的 Java 项目管理工具,它可以帮助开发者构建、管理和部署项目。...通过学习和掌握 Maven 的使用,开发者能够更便捷地管理项目,实现快速迭代和部署。
《Maven实战》不仅涵盖了Maven的基础知识,还深入探讨了Maven的高级应用,非常适合Java开发者从零开始学习Maven,同时也适合有一定经验的开发者深入了解Maven的核心机制和技术细节。通过本书的学习,读者可以掌握...
总结,"Maven学习极品"的资料是初学者入门的宝贵资源,它将帮助你理解Maven的核心概念,掌握依赖管理、构建生命周期和插件机制,进而提升开发效率和项目管理水平。通过深入学习和实践,你可以充分利用Maven的强大...
本文将详细介绍Maven的下载、安装以及配置过程,帮助开发者更好地理解和运用这一强大的工具。 ### 一、Maven简介 Maven通过使用一个标准的目录结构和一个XML格式的项目对象模型(Project Object Model,POM),...
搭配Maven环境 ...在本文中,我们学习了如何搭配Maven环境,包括安装Java环境、MyEclipse安装、Maven配置、Maven插件安装和Subversive安装。这些步骤将帮助我们建立一个功能强大的开发环境,提高开发效率。
- **步骤说明**:完成上述安装和配置步骤后,就可以使用Maven创建新的项目或管理现有项目。 - **操作示例**: - 创建新的Maven项目: ```sh mvn archetype:generate -DgroupId=...