PPT连接:https://github.com/ptteng/PPT/blob/master/PPT/java_task1_1.html
视频地址:https://v.qq.com/x/page/e05086ms27s.html
Maven是一个强大的Java项目构建工具。
构建工具是将软件项目构建相关的过程自动化的工具。
Maven主要做了两件事:
统一开发规范与工具
统一管理jar包
构建一个软件项目通常包含以下一个或多个过程:
生成源码(如果项目使用自动生成源码);
从源码生成项目文档;
编译源码;
将编译后的代码打包成JAR文件或者ZIP文件;
将打包好的代码安装到服务器、仓库或者其它的地方;
Maven的定位是软件项目管理和理解工具。Maven除了具备Ant的功能外,还增加了以下主要的功能:
1)使用Project Object Model来对软件项目管理;
2)内置了更多的隐式规则,使得构建文件更加简单;
3)内置依赖管理和Repository来实现依赖的管理和统一存储;
4)内置了软件构建的生命周期;
•Maven 拥有约定,因为你遵循了约定,它已经知道你的源代码在哪里。
•Maven 是声明式的。你需要做的只是创建一个 pom.xml 文件然后将源代码放到默认的目录。Maven 会帮你处理其它的事情。
•Maven 有一个生命周期,当你运行 mvn install 的时候被调用。这条命令告诉 Maven 执行一系列的有序的步骤,直到到达你指定的生命周期。
Ant是Apache另一个流行的构建工具。
Ant使用命令式的方式,即你需要在Ant构建文件里指定Ant应该执行的操作。你可以指定低级别的操作,如复制文件、编译代码等。你指定操作,还需要执行这些操作执行的顺序。Ant没有默认的目录结构。
Ant 没有正式的约定如一个一般项目的目录结构,你必须明确的告诉 Ant 哪里去找源代码,哪里放置输出。
Ant 是程序化的,你必须明确的告诉 Ant 做什么,什么时候做。你必须告诉它去编译,然后复制,然后压缩。
•Ant 没有生命周期,你必须定义目标和目标之间的依赖。你必须手工为每个目标附上一个任务序列
总结
maven和ant虽然都是构建工具,但是两种的思维方式是不一样的,ant更像一种编程语言,自己去写代码让项目做你想要让它做的事情,删除,复制,编译,测试,打包等,而maven则是自己有生命周期去完成你想要的编译测试等工作,只要你懂它的约定,当然你得懂他的各种约定包括配置文件的各种配置。maven在于配置。
参考文献
http://www.cnblogs.com/itech/archive/2011/11/01/2231837.html
http://blog.csdn.net/b11040805/article/details/20724943
http://blog.csdn.net/zhousenshan/article/details/48291903
http://www.cnblogs.com/jeffen/p/6124830.html
http://miaowugui.iteye.com/blog/2207024
-----------------------------------------------------------------------------------------------------------------------
技能树.IT修真院
“我们相信人人都可以成为一个工程师,现在开始,找个师兄,带你入门,掌控自己学习的节奏,学习的路上不再迷茫”。
这里是技能树.IT修真院,成千上万的师兄在这里找到了自己的学习路线,学习透明化,成长可见化,师兄1对1免费指导。快来与我一起学习吧 !IT修真院:http://www.jnshu.com/login/1/10031132