发布于 2015-02-01 01:56:15 | 349 次阅读 | 评论: 0 | 来源: PHPERZ
Apache Maven 项目构建工具
Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。当你使用Maven的时候,你用一个明确定义的项目对象模型来描述你的项目,然后Maven可以应用横切的逻辑,这些逻辑来自一组共享的(或者自定义的)插件。
Maven是一个采用纯java编写的开源项目管理工具。采用一种被称为Project object Model(POM)概念来管理项目,所有的项目配置信息都被定义在pom.xml文件中,通过这个pom文件,就可以管理我们对所有包的依赖。例如,我 们使用一些开源框架,第三方工具的jar包,以及这些jar包依赖的其他包等。通常,我们项目中需要依赖的jar包很多,这时候,jar包版本兼容问题也 就来了,maven可以对项目依赖的jar包进行管理,保持jar包基本的依赖,可以对jar包进行版本升级,也可以排除冗余的jar包。 同时maven也是一个强大的构建工具,能够帮我们自动化构建过程,从清理、编译 、测试到生成报告,再到打包和部署。
1.配置java运行环境
Maven依赖Java运行环境,因此使用Maven之前需要配置Java的运行环境,Maven可以运行在JDK1.4及以上的版本
JAVA_HOME为D:\jdk1.8.0_25
在path中加入%JAVA_HOME%\bin;
2.安装maven
将安装文件解压到指定的目录中,如:D:\SoftInstall\JAVA\maven,接着需要设置环境变量,将maven安装配置到操作系统环境中。点击计算机-属性-高级系统设置-环境变量,在用户变量中编辑如下:
MAVEN_HOME=D:\SoftInstall\JAVA\maven
修改PATH,在配置中添加%MAVEN_HOME%\bin; 注意:多个值之间需要有分号隔开
3、 调出命令行窗口(win + r之后输入cmd)
4、 输入mvn –version,出现界面如下,则安装Maven配置成功
5.设置配置文件
Maven 最重要的配 置就是settings.xml文件的配置,用户可以选择配置 $ M2_HOME/conf/settings.xml 或者 ~/.m2/settings.xml。前者是全局范围的,整台机器上的用户都会受到该配置的影响。而后者是用户范围的,只有当前用户才会受到该配置的影 响。
settings.xml设置如下:
<!-- 设置本地仓库路径 -->
<localRepository>D:/maven/repository</localRepository>
<!-- 设置发布 jar 包时的用户名及密码 -->
<servers>
<server>
<id>releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
</servers>
<!-- 设置 maven 的远程仓库为 nexus -->
<mirrors>
<mirror>
<id>nexus</id>
<mirrorOf>*</mirrorOf>
<name>Local Repository</name>
<url>http://192.168.24.252:8081/nexus/content/groups/public</url>
</mirror>
</mirrors>
<!-- 设置 central 的路径等 -->
<profiles>
<profile>
<id>central</id>
<repositories>
<repository>
<id>central</id>
<name>Central</name>
<!-- 该 url 没有意义,可以随便写,但必须有。 -->
<url>http://localhost:8081/nexus/content/groups/public</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>central</id>
<name>local private nexus</name>
<url>http://localhost:8081/nexus/content/groups/public</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<!-- 激活 central -->
<activeProfiles>
<activeProfile>central</activeProfile>
</activeProfiles>
<!-- 配置eclipse插件 -->
<pluginGroups>
<pluginGroup>org.mortbay.jetty</pluginGroup>
<pluginGroup>org.codehaus.cargo</pluginGroup>
</pluginGroups>
</settings>
Maven基于生命周期模型对项目进行管理,Maven有三套相互独立的生命周期。
Clean Lifecycle 在进行真正的构建之前进行一些清理工作;
Site Lifecycle 生成项目报告,站点,发布站点。
Defau Lifecycle构建的核心部分,编译、测试、打包、部署等;
总结:Maven是一款 优秀的项目管理工具,但是同时它也存在着一些缺点,例如Maven对IDE(Eclipse和IDEA)的支持比较差,bug多,而且很不稳定,这次做项 目对这点感触颇深,m2eclipse插件是一个比较优秀和成熟的工具。另一点就是Maven仓库jar更新的不及时,或是有时候无法从远程仓库中下载 jar包,常需要我们手动下载复制到本地仓库中 。但是不管怎么说,Maven还是一个比较出色的。