Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。
发文时,绝大多数开发人员都把 Ant 当作 Java 编程项目的标准构建工具。遗憾的是,Ant 的项目管理工具(作为 make的替代工具)不能满足绝大多数开发人员的需要。通过检查 Ant 构建文件,很难发现项目的相关性信息和其它信息(如开发人员/拥有者、版本或站点主页)。
Maven 除了以程序构建能力为特色之外,还提供 Ant 所缺少的高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目,而使用 Ant 则需要十几行。事实上,由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司项目采用 Maven 的比例在持续增长。
Maven这个单词来自于意第绪语,意为知识的积累,最早在Jakata Turbine项目中它开始被用来试图简化构建过程。当时有很多项目,它们的Ant build文件仅有细微的差别,而JAR文件都由CVS来维护。于是Maven创始者开始了Maven这个项目,该项目的清晰定义包括,一种很方便的发布项目信息的方式,以及一种在多个项目中共享JAR的方式。
方法/步骤
-
Maven和Ant的区别一:
1.ant脚本是可以直接运行在maven中的。maven和ant最大的差别就是在于maven的编译以及所有的脚本都有一个基础,就是POM(project object model)。这个模型定义了项目的方方面面,然后各式各样的脚本在这个模型上工作,而ant完全是自己定义,显然maven更胜一筹。
2.maven对所依赖的包有明确的定义,如使用那个包,版本是多少,一目了然。而ant则通常是简单的inclde 所有的jar。导致的最终结果就是,你根本无法确定JBoss中的lib下的common-logging 是哪个版本的,唯一的方法就是打开 META-INF 目录下MANIFEST.MF。
3.maven是基于中央仓库的编译,即把编译所需要的资源放在一个中央仓库里,如jar,tld,pom,等。当编译的时候,maven会自动在仓库中找到相应的包,如果本地仓库没有,则从设定好的远程仓库中下载到本地。这一切都是自动的,而ant需要自己定义了。这个好处导致的结果就是,用maven编译的项目在发布的时候只需要发布源码,小得很,而反之,ant的发布则要把所有的包一起发布,显然maven又胜了一筹。
4.maven有大量的重用脚本可以利用,如生成网站,生成javadoc,sourcecode reference,等。而ant都需要自己去写。
5.maven目前不足的地方就是没有象ant那样成熟的GUI界面,不过mavengui正在努力中。目前使用maven最好的方法还是命令行,又快又方便
-
Maven的优势:
•协同开发的基本规范,为大家提供方便的协作的模式,能增加代码的复用,提高生产率。
•提供方便,规范化的打包方法,是公司完成自动构建系统的核心部分,能帮助提高敏捷开发的效率(敏捷开发提倡尽早集成)。
•减少冗余,减少出错的可能。
•中心资源库管理,能减低源码库的大小,中心资源库可以统一定期备份。
•目录结构规范,让开发者从一个maven项目过度到另一maven项目很容易。
•大量的开源项目使用了maven。
-
Maven常用命令:
•mvn archetype:generate :创建 Maven 项目
•mvn compile :编译源代码
•mvn test-compile :编译测试代码
•mvn test : 运行应用程序中的单元测试
•mvn site : 生成项目相关信息的网站
•mvn clean :清除目标目录中的生成结果
•mvn package : 依据项目生成 jar 文件
•mvn install :在本地 Repository 中安装 jar
•mvn deploy:将jar包发布到远程仓库
•mvn eclipse:eclipse :生成 Eclipse 项目文件
-
Maven的安装配置:
在安装maven之前,先确保已经安装JDK1.7及以上版本,并且配置好环境变量。
下载maven3,最新版本是Maven3.2.1 ,下载地址:http://maven.apache.org/download.html
下载apache-maven-3.2.1-bin.zip文件后,并解压到 D:mavenapache-maven-3.2.1
配置maven3的环境变量:先配置M2_HOME的环境变量,新建一个系统变量:M2_HOME , 路径是:D:mavenapache-maven-3.2.1,如图所示:
-
再配置path环境变量,在path值的末尾添加"%M2_HOME%in",如下图所示;
-
点击确定之后,打开cmd窗口:输入 mvn -version,出现如下内容表示安装成功。
-
Maven添加本地仓库:
打开本地存放maven目录 例如:D:mavenapache-maven-3.2.1,打开conf文件夹下的settings.xml文件,找到第53行,把注释去掉,修改成:<localRepository>E:/mvnRespo</localRepository>
-
eclipse中的设置:
为Eclipse安装Maven插件(默认已有,无需安装)为Eclipse配置MAVEN
从Eclipse的菜单栏点击Windows -> Preferences -> Maven -> Installations,将之前解压的maven添加进来,如图所示
-
点击User Settings 使用我们自己的Maven配置,如图所示