项目管理Maven系列(一)
简介、安装、配置
目录
- 1、简介
- 2、安装部署
- 2.1、Maven for Win
- 2.2、Maven for Mac
- 3、本地资源库
- 4、中央存储库
- 5、启动代理
- 6、Eclipse上配置Maven
1、简介
Maven是一个项目管理工具,它包含了一个项目对象模型(Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。当你使用Maven的时候,你用一个明确定义的项目对象模型来描述你的项目,然后Maven可以应用横切的逻辑,这些逻辑来自一组共享的(或者自定义的)插件。
Maven有一个生命周期,当你运行mvn install的时候被调用。这条命令告诉Maven执行一系列的有序的步骤,直到到达你指定的生命周期。遍历生命周期旅途中的一个影响就是,Maven运行了许多默认的插件目标,这些目标完成了像编译和创建一个JAR文件这样的工作。
此外,Maven能够很方便的帮你管理项目报告,生成站点,管理JAR文件,等等。
官方网址:http://maven.apache.org/
2、安装部署
下载地址:http://maven.apache.org/download.cgi
如图所示:Maven下载完成。
2.1、Maven for Win
1、在Windows环境下,将apache-maven-3.5.4-bin.tar.gz解压到任意目录(例如:D盘)即可。
2、配置环境变量
鼠标选中我的电脑右键,点击属性--->高级系统配置--->高级--->环境变量。
点击环境变量,系统变量里:
(1)点击新建
代码语言:javascript复制变量名填写 MAVEN_HOME
变量值填写 D:apache-maven-3.5.4
(2)点击新建
代码语言:javascript复制变量名填写 MAVEN
变量值填写 %MAVEN_HOME%bin
(3)修改Path,点击编辑
代码语言:javascript复制在变量值最后添加 ;%MAVEN%
确定后,打开命令行,输入mvn -version,提示以下信息表示Maven环境变量配置成功。
2.2、Maven for Mac
1、在Mac环境下,将apache-maven-3.5.4-bin.tar.gz解压到任意目录(例如:/Users/automation/apache-maven)即可。
2、配置环境变量
(1)打开终端,进入用户的根目录。
(2)在终端输入命令 ls -a ,查询 .bash_profile文件是否存在。如果不存在,创建文件:touch .bash_profile
(3)编辑文件 vi ~/.bash_profile,输入内容如下:
代码语言:javascript复制export MAVEN_HOME=/Users/automation/apache-maven
在PATH后面追加内容 :$MAVEN_HOME/bin
如图所示:
(4)编辑后保存文件,之后输入source ~/.bash_profile,使环境变量生效。
(5)在终端输入mvn -version,提示以下信息表示Maven环境变量配置成功。
3、本地资源库
Maven本地资源库是用来存储所有项目的依赖关系(插件jar和其他文件),这些文件被Maven下载到本地文件夹里。创建一个Maven项目,所有相关文件将被存储在你的Maven本地资源库里。
在默认情况下,Maven的本地资源库默认为.m2目录文件夹。
代码语言:javascript复制Widnows:C:Users{username}.m2 (username为当前用户名)
Linux/Mac:~/.m2 (~/为当前用户目录地址)
如果想更改本地资源库目录,则需要打开配置文件进行设置(Maven安装目录里的conf目录下的settings.xml文件)。
settings.xml文件内容(找到本地资源库设置位置):
取消注释本地资源库选项,填写你的本地资源库路径,之后保存即可。
如图所示:设置本地资源库地址在D:/MyMaven/m2目录下。
4、中央存储库
当创建一个Maven的项目,Maven会检查你的pom.xml文件,以确定哪些依赖需要下载。首先,Maven将从本地资源库获取依赖资源,如果没有找到,就会从默认的Maven的中央存储库(https://repo.maven.apache.org/maven2/)进行查找下载。
如图所示:默认的Maven中央存储库资源。
但是这些中央存储库往往需要连接互联网访问,由于访问互联网的限制或安全控制的需要,我们往往需要建立对中央存储库的镜像,需要修改Maven安装目录里的conf目录下的settings.xml文件(里添加镜像)。
如图所示:添加一个镜像。
代码语言:javascript复制id为镜像库的id,用以唯一标识该镜像库。
mirrorOf为镜像的远程库,central为镜像Maven的central库。如果该镜像库的目标远程库不止一个,则可以使用*表示任意远程库;external:*表示任何不在localhost和文件系统中的远程库;r1,r2表示r1库或者r2库;*,!r1表示除了r1库之外的任何远程库。
name为镜像库名。
url为该镜像库访问地址。
更多镜像:
代码语言:javascript复制<mirror>
<id>repo2</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo2.maven.org/maven2/</url>
</mirror>
<mirror>
<id>uk</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://uk.maven.org/maven2/</url>
</mirror>
<mirror>
<id>ibiblio</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://maven.ibiblio.org/maven2/</url>
</mirror>
<mirror>
<id>jboss</id>
<mirrorOf>central</mirrorOf>
<name>JBoss Public Repository Group</name>
<url>http://repository.jboss.org/nexus/content/groups/public/</url>
</mirror>
<mirror>
<id>jboss2</id>
<mirrorOf>central</mirrorOf>
<name>JBossJBPM Repository</name>
<url>https://repository.jboss.org/nexus/content/repositories/releases/</url>
</mirror>
5、启动代理
如果你的环境需要代理才可以访问互联网,那么Maven也是需要设置代理才可以访问互联网下载相关依赖。
打开配置文件(安装目录里的conf目录下的settings.xml)。
settings.xml文件内容(找到代理服务器设置位置):
取消注释代理选项,填写你的代理服务器详细信息,之后保存即可。
代码语言:javascript复制proxies下可以有多个proxy元素,如果声明了多个proxy元素,则默认情况下第一个被激活的proxy会生效;
id为自定义代理名,active的值为true表示激活该代理,protocol表示使用的代理协议,这里是http;
username为代理用户名,password为代理密码。如果没有代理用户名与密码则注释掉这两个字段;
host指定主机名,port为端口;
nonProxyHost指定哪些主机名不需要代理,可以使用|符号来分隔多个主机名。此外,该配置也支持通配符,如*.google.com表示所有以google.com结尾的域名访问都不要通过代理。
如图所示:设置完成后的代理服务器信息。
6、Eclipse上配置Maven
以Widnows为例:
1、打开Eclipse,依次点击Window--->Preferences--->Maven--->Installations。
2、点击Add,在弹出的设置窗口里填写Maven的安装目录与名称即可,点击Finish。
3、选中新增的Maven设置,点击Apply。
4、点击User Settings。
5、全局设置与个人设置引入Maven的配置文件(settings.xml),点击Apply,最后点击OK即可。