Maven3之初识

参考资料
http://www.cnblogs.com/good_hans/archive/2010/03/22/1691965.html
http://zhidao.baidu.com/question/175568447.html
推荐: http://www.cnblogs.com/jinspire/archive/2011/10/17/2214554.html
http://book.51cto.com/art/201011/234380.htm
环境:Win7 + JDK1.6 + maven3
Maven配置
1 设置JAVA_HOME
2 设置M2_HOME

3 设置PATH  %M2_HOME%\bin;
4 设置MAVEN_OPTS(解决MAVEN内存溢出)
http://hi.baidu.com/51buyhost/blog/item/4f7005ca4bc566e352664f8c.html
http://book.51cto.com/art/201011/234380.htm
结论:
在项目较大时,使用Maven生成项目站点需要占用大量的内存,如果没有该配置,则很容易得到 java.lang.OutOfMemeoryError.
具体配置:找到文件 %M2_HOME%\bin\mvn.bat,这就是启动Maven的脚本文件,在该文件中你能看到有一行注释为:@REM set MAVEN_OPTS=-Xdebug -Xnoagent -Djava.compiler=NONE它的意思是你可以设置一些Maven参数,我们就在注释下面加入一行:
set MAVEN_OPTS= -Xms128m -Xmx512m
,
再打开cmd窗口,结果如下:

可能还会有如下错误呢!

以上为什么会出现:cmd不是命令或外部命令的错误呢!经过搜索如下:
http://www.iteye.com/problems/43535
设置系统变量PATH时,覆盖了原PATH的设置,只要在PATH前面加上:
C:\WINDOWS\system32;重新打开cmd窗口,运行:mvn –v就显示正常了!
Maven介绍
Mavn官网: http://maven.apache.org/
Maven: http://baike.baidu.com/view/336103.htm
Maven是基于项目对象模型(POM),管理项目的构建,报告和文档的软件项目管理工具. Maven提供一种选择,将你的注意力从作业层转移到项目管理层。Maven项目知道如何构建和捆绑代码,运行测试,生成文档并宿主项目网页.
Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。当你使用Maven的时候,你用一个明确定义的项目对象模型来描述你的项目,然后Maven可以应用横切的逻辑,这些逻辑来自一组共享的(或者自定义的)插件.
Maven与Ant区别
来自Maven权威指南。。。
Ant
Ant 没有正式的约定如一个一般项目的目录结构,你必须明确的告诉 Ant 哪里去找源代码,哪里放置输出。随着时间的推移,非正式的约定出现了,但是它们还没有在产品中模式化。
Ant 是程序化的,你必须明确的告诉 Ant 做什么,什么时候做。你必须告诉它去编译,然后复制,然后压缩.
Ant 没有生命周期,你必须定义目标和目标之间的依赖。你必须手工为每个目
标附上一个任务序列。

Apache Maven
Maven 拥有约定,因为你遵循了约定,它已经知道你的源代码在哪里。它把字节码放到 target/classes ,然后在 target 生成一个 JAR 文件。
Maven 是声明式的。你需要做的只是创建一个 pom.xml 文件然后将源代码放
到默认的目录。Maven 会帮你处理其它的事情。

Maven 有一个生命周期,当你运行 mvn install 的时候被调用。这条命令告诉 Maven 执行一系列的有序的步骤,直到到达你指定的生命周期。遍历生命周期旅途中的一个影响就是,Maven 运行了许多默认的插件目标,这些目标完成了像编译和创建一个 JAR 文件这样的工作。
Maven 以插件的形式为一些一般的项目任务提供了内置的智能.

附件为:
Maven in Action只有1~4,
maven-definitive-guide_zh

猜你喜欢

转载自liuzidong.iteye.com/blog/1113890
今日推荐