Maven+Eclipse安装配置(一)

来源:互联网 发布:送别领导的诗句 知乎 编辑:程序博客网 时间:2024/05/16 14:24

介绍

maven是一种全新的项目构建方式,让我们的开发更加简单,高效。Maven主要做的是两件事:

  1. 统一开发规范与工具

  2. 统一管理jar包

这两件事情他都做到了,而且还做了更多的事情。Maven还可以管理项目的整个声明周期,包括编译,构建,测试,发布,报告等等。目前Apache下绝大多数项目都已经采用Maven进行管理。而Maven本身还支持多种插件,可以方便更灵活的控制项目。

工欲善其事,必先利其器。咱们也来玩玩 Maven 这货吧!先得去下载一个。


准备工作

  • java开发环境(JDK)

  • maven下载地址:http://maven.apache.org/release-notes-all.html


安装

安装maven超级简单,总共分四步:

  1. 下载 Maven ,其实就是一个压缩包,解压一下

  2. 配置一下环境变量

有两个环境变量可以配置:

  • MAVEN_HOME = D:\maven\apache-maven-3.2.3

  • MAVEN_OPTS = -Xms128m -Xmx512m(可选)

    1. 在path变量末尾加入“%MAVEN_HOME%\bin;”。

以上M2_HOME 是必须要配置的,如果想让 Maven 跑得更快点,可以根据自己的情况来设置MAVEN_OPTS

  1. 最后,验证是否安装成功

现在我们打开 cmd,输入:

mvn -v

可以查看maven版本

在使用 Maven 之前,我们必须要了解一下 Maven 到底是怎样管理 jar 包的,这就是 Maven 仓库要干的活了。


了解Maven仓库

使用 Maven 给我们带来的最直接的好处,就是统一管理jar包,那么这些jar包存放在哪里呢?它们就在您的本地仓库中,默认地址位于* C:\Users\用户名.m2 *目录下(当然也可以修改这个默认地址),下面我们就修改一下这个默认地址。

实际上我们可以将本地仓库理解“缓存”,目的是存放jar包。开发项目时项目首先会从本地仓库中获取 jar 包,当无法获取指定 jar 包的时候,本地仓库会从 远程仓库(或 中央仓库)中下载 jar 包,并“缓存”到本地仓库中以备将来使用。

远程仓库(中央仓库)是 Maven 官方提供的,可通过 http://search.maven.org/ 来访问。这样一来,本地仓库会随着项目的积累越来越大。通过下面这张图可以清晰地表达项目、本地仓库、远程仓库之间的关系。

既然 Maven 安装了,那么本地仓库也就有了,默认路径在我们C盘目录下,对于专业人士来说C盘很危险,下面我们修改一下默认配置。


配置本地仓库

本地仓库,顾名思义,就是Maven在本地存储构件的地方。Maven会将下载的类库(jar包)放置到本地的一个目录下,如果想重新定义这个目录的位置就需要修改Maven本地仓库的配置:

注:maven的本地仓库,在安装maven后并不会创建,它是在第一次执行maven命令的时候才被创建

maven本地仓库的默认位置:无论是Windows还是Linux,在用户的目录下都有一个.m2/repository/的仓库目录,这就是Maven仓库的默认位置。

更改配置用户范围的本地仓库:

先将M2_HOME/conf/settings.xml复制到/.m2/目录下,然后在~/.m2/settings.xml,设置localRepository元素的值为想要的仓库地址

<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">      <!-- localRepository       | The path to the local repository maven will use to store artifacts.       |       | Default: ${user.home}/.m2/repository      <localRepository>/path/to/local/repo</localRepository>      -->        <localRepository>D:\maven\repository</localRepository></settings>

这时候,maven的本地仓库地址就变成了 D:\maven_new_repository

注:此时配置的maven的本地仓库是属于用户范围的。

更改配置全局范围的本地仓库:

M2_HOME/conf/settings.xml中更改配置,更改配置的方法同上

**注:此时更改后,所有的用户都会受到影响,而且如果maven进行升级,那么所有的配置都会被清除,所以要提前复制和备份M2_HOME/conf/settings.xml文件
故:一般情况下不推荐配置全局的
settings.xml**

依据该配置,Maven就会将下载的类库保存到D:\maven\repository中。

实验一下我们刚才做的事情产生作用没有,控制台输入:

mvn help:system

如果没有任何问题,执行完该命令之后,在D:\maven\repository下面就会多出很多文件,这些文件就是maven从中央仓库下载到本地仓库的文件,maven已经开始为我们工作了。


安装m2eclipse插件

Eclipse是一款非常优秀的IDE。除了基本的语法标亮、代码补齐、XML编辑等基本功能外,最新版的Eclipse还能很好地支持重构,并且集成了JUnit、CVS、Mylyn等各种流行工具。可惜Eclipse默认没有集成对Maven的支持。幸运的是,由Maven之父Jason Van Zyl创立的Sonatype公司建立了m2eclipse项目,这是Eclipse下的一款十分强大的Maven插件,可以访问 M2Eclipse官网 了解更多该项目的信息。

安装步骤:

  1. 启动Eclipse之后,在菜单栏中选择Help,然后选择Install New Software…

  2. 接着你会看到一个Install对话框,点击Work with:字段边上的Add按钮,你会得到一个新的Add Repository对话框

  3. 在Name字段中输入m2e,Location字段中输入 http://download.eclipse.org/technology/m2e/releases ,然后点击OK。Eclipse会下载m2eclipse安装站点上的资源信息


配置m2eclipse

1. 配置maven安装目录

  • 依次打开Window –> Perferences –> Maven ,展开Maven的配置界面;

  • 然后点击Installations –> add 选择maven安装目录,这里我的Maven安装目录为D:\maven\apache-maven-3.2.3,选择你的Maven安装目录,并点击确定, 之后可以点击Apply,点击OK,即可完成

  • 我们在Maven的配置界面,设置User Settings

Global Settings选择maven 安装目录下conf文件夹下的settings.xml,这里我的Maven安装目录为D:\maven\apache-maven-3.2.3\conf\settings.xml,选择你的Maven安装目录。检查Local Repository 项,如果为 D:/maven/repository则配置成功,否则重新配置上一步。

恭喜你,现在我们已经配置好了eclipse,下面,我们可以创建maven项目了

Maven安装最佳实践

本节介绍一些在安装Maven过程中不是必须的,但十分有用的实践。

1. 设置MAVEN_OPTS环境变量

我们通常需要设置MAVEN_OPTS的值为:-Xms128m -Xmx512m,因为Java默认的最大可用内存往往不能够满足Maven运行的需要,比如在项目较大时,使用Maven生成项目站点需要占用大量的内存,如果没有该配置,我们很容易得到java.lang.OutOfMemeoryError。因此,一开始就配置该变量是推荐的做法。

关于如何设置环境变量,请参考前面设置M2_HOME环境变量的做法,尽量不要直接修改mvn.bat或者mvn这两个Maven执行脚本文件。因为如果修改了脚本文件,升级Maven时你就不得不再次修改,一来麻烦,二来容易忘记。同理,我们应该尽可能地不去修改任何Maven安装目录下的文件。

2. 配置用户范围settings.xml

Maven用户可以选择配置$M2_HOME/conf/settings.xml或者~/.m2/settings.xml。前者是全局范围的,整台机器上的所有用户都会直接受到该配置的影响,而后者是用户范围的,只有当前用户才会受到该配置的影响。

我们推荐使用用户范围的settings.xml,主要原因是为了避免无意识地影响到系统中的其他用户。当然,如果你有切实的需求,需要统一系统中所有用户的settings.xml配置,当然应该使用全局范围的settings.xml。

除了影响范围这一因素,配置用户范围settings.xml文件还便于Maven升级。直接修改conf目录下的settings.xml会导致Maven升级不便,每次升级到新版本的Maven,都需要复制settings.xml文件,如果使用~/.m2目录下的settings.xml,就不会影响到Maven安装文件,升级时就不需要触动settings.xml文件。

3. 不要使用IDE内嵌的Maven

无论是Eclipse还是NetBeans,当我们集成Maven时,都会安装上一个内嵌的Maven,这个内嵌的Maven通常会比较新,但不一定很稳定,而且往往也会和我们在命令行使用的Maven不是同一个版本。这里有会出现两个潜在的问题:

首先,较新版本的Maven存在很多不稳定因素,容易造成一些难以理解的问题;

其次,除了IDE,我们也经常还会使用命令行的Maven,如果版本不一致,容易造成构建行为的不一致,这是我们所不希望看到的。因此,我们应该在IDE中配置Maven插件时使用与命令行一致的Maven。


安装Maven后每次启动出现警告信息:

Eclipse is running in a JRE, but a JDK is required
Some Maven plugins may not work when importing projects or updating source folders.

分两步解决问题:

  1. 检查Eclipse正在使用的JRE

‘Window’ -> ‘Preferences’ -> ‘Java’ -> ‘Installed JREs’ 确定正在使用JDK而非JRE.

如果没有JDK, 则先新增一个Standard VM.

  1. 配置Eclipse.ini

检查Eclipse配置文件, 增加/编辑以下代码:

-vmC:\Progra~1\Java\jdk1.8.0_77\bin\javaw.exe 

注意事项:

  1. 第一行参数名称, 第二行为值, 不能写到同一行中

  2. 关于第二行的值, 因为不允许出现空格, 所以使用Progra~1或2 替代”Program Files (x86)”.如果在Program Files下, 请使用Progra~1, 如果在x86下, 则使用Progra~2

  3. 在文件中的位置, 不能放到最后(不能在-vmargs之后), 不放心的直接放到文件最前, 如:


-vm
C:\Progra~1\Java\jdk1.8.0_77\bin\javaw.exe
-startup
.....
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms240m
-Xmx912m

  1. 重启Eclipse, 警告不再出现.

Reference:

Maven的安装、配置及使用入门

Eclipse is running in a JRE, but a JDK is required 解决方法

项目管理和构建—Maven下载、安装和配置(二)

十分钟教程,eclipse配置maven + 创建maven项目(三)

0 0