精选文章 安装和运行maven

安装和运行maven

作者:weixin_33769207 时间: 2014-04-15 01:45:00
weixin_33769207 2014-04-15 01:45:00

本篇文章将讲解maven的安装和入门前的准备工作,为了让更多的人了解到maven,我会分别讲解各个操作系统上maven的安装方式。

 

第一步,下载maven:

你可以从Apache Maven项目的web站点下载Maven:http://maven.apache.org/

download.html.

当你下载Maven的时候,确认你选择了最新版本的Apache Maven。本篇文章发布之前,maven已经到了maven3了,但我本人机器上安装的是maven2。下面即是maven2的安装方式,这个没什么关系,因为3和2的安装方式是一样的,现在安装了2以后升级为3也很简单。

 

第二步,安装maven:

操作系统之间有很大的区别,像Mac OSX 和微软的Windows,而且不同版本Windows之间

也有微妙的差别。幸运的是,在所有操作系统上安装Maven的过程,相对来说还是比较

直接的。下面的我会概括在许多操作系统上安装Maven的最佳实践

 

1.在Mac OSX上安装Maven:

你可以从http://maven.apache.org/download.html下载Maven的二进制版本。下载最新

的,下载格式最方便你使用的版本。找个地方存放它,并把存档文件解开。如果你把存

档文件解压到 /usr/local/maven-2.0.9 ;你可能会需要创建一个符号链接,那样就能

更容易使用,当你升级Maven的时候也不再需要改变环境变量

/usr/local % ln -s maven-2.0.9 maven

/usr/local % export M2_HOME=/usr/local/maven

/usr/local % export PATH=/usr/local/maven/bin:/usr/local/bin:/usr/local/maven/bin:/

将Maven安装好后,你还需要做一些事情以确保它正确工作。你需要将它的 bin 目录

(该例中为 /usr/local/maven/bin)添加到你的命令行路径下。你还需要设置 M2_HOME

环境变量,其对应值为Maven的根目录(该例中为 /usr/local/maven)。

你还需要把 M2_HOME 和 PATH 写到一个脚本里,每次登陆的时候运行这个脚本。把下

面的几行加入到 .bash_login。

export M2_HOME=/usr/local/maven

export PATH=/usr/local/maven/bin:/usr/local/bin:/usr/local/maven/bin:/usr/kerberos/

一旦你把这几行加入到你的环境中,你就可以在命令行运行Maven了。

 

2.在Microsoft Windows上安装Maven:

。在这里假设Maven安装目录是 c:\Program Files\maven-2.0.9 ,但

是,只要你设置的正确的环境变量,把Maven安装到其它目录也一样。当你把Maven解

压到安装目录后,你需要设置两个环境变量——PATH和M2_M2_HOME。设置这两个环境变

量,键入下面的命令:

C:\Users\tobrien > set M2_HOME=c:\Program Files\maven-2.0.9

C:\Users\tobrien > set PATH=%PATH%;%M2_HOME%\bin

(注:上面的命令行和我们去修改环境变量是一样的效果,说白了安装它的方式和tomcat,jdk它们并没有太大的区别.....)

在命令行设置环境变量后,你可以在当前会话使用Maven,但是,除非你通过控制面

板把它们加入系统变量,你将需要每次登陆系统的时候运行这两行命令。你应该在

Microsoft Windows中通过控制面板修改这两个变量。

 

3.在Linux上安装Maven:

步骤参考“在Mac OSX上安装Maven”

 

 

第三步,当你完成第二步之后,你需要在命令行中键入mvn -v,以查看当前的maven的版本信息以及jdk的版本信息。假使出现,即说明maven已经安装完毕。

 

第四步,了解用户相关配置和仓库。

当你不再仅仅满足于使用Maven,还想扩展它的时候,你会注意到Maven创建了一些本地

的用户相关的文件,还有在你home目录的本地仓库。在C:\Documents and Settings\Administrator\.m2目录下有:

C:\Documents and Settings\Administrator\.m2\settings.xml

该文件包含了用户相关的认证,仓库和其它信息的配置,用来自定义Maven的行

为。

C:\Documents and Settings\Administrator\.m2\repository\

该目录是你本地的仓库。当你从远程Maven仓库下载依赖的时候,Maven在你本地

仓库存储了这个依赖的一个副本。

 

第五步,学会获得maven的帮助

Maven的核心十分简单,它所做的工作其实都交给插件了。插件太多了,以至于不可能在这里全部都讲到它们的用法或者注意事项之类的,所以学会自己查看maven帮助,可以帮助我们自己去了解更多的插件的用法和信息。

http://maven.apache.org

你首先应该看看这里,Maven的web站点包含了丰富的信息及文档。每个插件都有

几页的文档,这里还有一系列“快速开始”的文档,它们的内容是十分有帮

助的。

 

文章写道这里,估计大家会想,maven是不是太麻烦了,这么多讲究的。其实,我们大致的整理下思路就很简单了,就像所有的行业学习新事物一样。第一你得了解知道它,第二你得有人帮助你,教你去使用它(我们这里就是我们的同事或者官方提供的文档提供我们帮助了),最后我们慢慢试着使用它,在摸索中熟悉着,在熟悉中探索到更多更远,我以为这些在我们这个行业尤为重要。

所以,希望大家不要因前面的准备工作而止步在此,因为事情是做出来的而不是说出来。因此在下篇文章里,我就会以一个简单maven项目,尽可能的对maven的核心概念有一个自己主观上的认识,以此开始大家的maven之旅。

转载于:https://my.oschina.net/bluesroot/blog/222609

勿删,copyright占位
分享文章到微博
分享文章到朋友圈

上一篇:C++虚函数浅探

下一篇:C++虚函数浅探

您可能感兴趣

  • 不停机还能替换代码?6年的 Java程序员表示不可思议

    相信很多人都有这样一种感受,自己写的代码在开发、测试环境跑的稳得一笔,可一到线上就抽风,不是缺这个就是少那个反正就是一顿报错,而线上调试代码又很麻烦,让人头疼得很。不过, 阿里巴巴出了一款名叫Arthas的工具,可以在线分析诊断Java代码,让人眼前一亮。 ❞ Arthas 是什么? Arthas(阿尔萨斯) 是阿里开源的一个Java在线分析诊断工具。 Arthas 能解决啥问题? 在日常开...

  • 源码包管理 任务计划——at cron

    一、文件管理 1、源码包管理 (1)概述 Source Code 源代码经过GCC、C++编译环境编译才能运行 可以设定个人设置,开关功能 (2)源码包管理 获取源码包——官网下载到真机,然后 rz 命令上传到虚拟机 ——在网上找到软件包的下载链接,直接 “ wget 链接 ” 就可以下载了 (3)示例——部署 Tengine 下载源码包的命令 [root@localhost ~]# wge...

  • IntellIJ IDEA2020新功能

    一、java 1、Java 14支持:记录和模式匹配 IntelliJ IDEA 2020.1添加了对Java 14及其新功能的支持。IDE不仅添加了对Records的完整代码洞察支持,而且还使您能够快速创建新记录并生成其构造函数和组件,并警告存在的错误。您还将发现对instanceof运算符的模式匹配的支持,包括新的检查和快速修复,该快速修复通过用新的简洁模式变量替换它们来快速简化冗长的i...

  • 前端路 - Webpack

    概述 本质 JavaScript 应用程序的静态模块打包器 核心 加载器(Loader)机制 工作流程 配置初始化 webpack 会首先读取配置文件,执行默认配置 编译前准备 webpack 会实例化 compiler,注册 plugins、resolverFactory、hooks。 reslove 前准备 webpack 实例化 compilation、NormalModuleFact...

  • 浅层砂过滤器(浅层介质过滤器)介绍及现场案例反馈图(多图)

    浅层砂过滤器(浅层介质过滤器)是由多个标准高速砂缸单元组成,其内部设有D特的布水器和集水器,拥有的双向自动冲洗阀,可实现在正常系统运行中多个标准高速砂缸逐个单独的反冲洗,全自动程序控制。具有反冲洗用水量小,设备安装方便,易于操作等优点。该设备流量大,无需维护。根据不同的用户要求,有立式和卧式两个系列。适用于工业和民用循环水系统的水质处理。 【浅层砂过滤器(浅层介质过滤器)工作原理】 浅层砂过...

  • 有关string stringbuff stringbuild 的区别

    string stringbuff stringbuild的执行效率: stringbuild>stringbuff>string String类是不可变类,任何对String的改变都会引发新的String对象的生成; StringBuffer是可变类,任何对它所指代的字符串的改变都不会产生新的对象,线程安全的。 StringBuilder是可变类,线性不安全的,不支持并发操作,不适合多线程...

  • 解放双手、提高效率,如何优雅的做一名IDC运维!

    在IDC行业中,有一群从业者很特殊,你上班时他在上班,你休息时他在加班,你休假时他还在值班。这个人就是IDC运维工程师,听听他们自己怎么说。 我的职业是一名IDC运维工程师,守护机房的工兵,日常工作主要是维护机房的IT设备、网络系统的稳定,还有维护客户和公司的和谐关系,简称"维稳"人员。 今年是我在运维部门第七个年头了,我每天的工作看起来"轻松",实际很繁重。 经常来回奔波,出入各个机房是我...

  • 吸式自清洗过滤器和刷式自清洗过滤器的区别

    吸式自清洗过滤器和刷式自清洗过滤器的区别: 自清洗过滤器工作原理(吸式) 水由入口进入,首先经过粗滤网滤掉较大颗粒的杂质,然后到达细滤网。在过滤过程中,细滤网逐渐累积水中的脏物、杂质,形成过滤杂质层,由于杂质层堆积在细滤网的内侧,因此在细滤网的内、外两侧就形成了一个压差。 当过滤器的压差达到过滤器预设值时,将开始自动清洗过程,此间净水供应不断流,清洗阀打开,清洗室及吸污器内水压大幅度下降,通...

华为云40多款云服务产品0元试用活动

免费套餐,马上领取!
CSDN

CSDN

中国开发者社区CSDN (Chinese Software Developer Network) 创立于1999年,致力为中国开发者提供知识传播、在线学习、职业发展等全生命周期服务。