Java入门到精通---工具篇之Maven概述

原创 2016年08月29日 14:42:37

为接手gxpt准备已经快一个月了从SSH2-->EJB-->环境搭建-->Maven的构建。下面就带领大家初始Maven

一、什么是Maven。

       Maven是一个垮平台的项目管理工具,主要服务于Java平台的项目构建、依赖管理和项目信息管理。Maven是一个能够帮我们自动化构建过程,充清理、编译、测试到生成报告,再到打包和部署。我们不需要一遍又一遍的输入命令,这些工作Maven都为我们做好了。Maven最大化地消除了构建的重复。在Maven以前,十个项目可能有十种构建方式;有了Maven后所有项目的构建命令都是简单一直的,这极大地避免了不必要的学习成本。

       综上所属,Maven作为一个构建工具,不仅能帮我们自动化构建,还能抽象构建过程,提供构建任务实现;它跨平台,对外提供了一致的操作接口。

二、为什么用Maven。

1、build逻辑可以被重用。在Ant中可能需要多次重复地写相同的语句,但由于POM的继承性,可以复用其它的POM文件中的语句。这样既可以写出清晰的build语句,又可以构造出层次关系良好的build工程。

2、不必关注build工作的实现细节。我们只需要使用一些build生命周期短语就可以达到我们的目标,而不必管Maven是如何做到这些的。如,只需要告诉Maven要安装(install),那么它自然就会验证,编译,打包,及安装。

3、Maven会自动加载工程依赖的artifact所依赖的其它artifact(Transitive Dependency),而不用显示的将这些artifact全部写到dependency中。

4、如果完全使用Maven的标准目录布局,那么可以极大地减少配置细节。

三、类似产品。

      在Maven出现之前有Ant。在以前的学习中用过Ant,Ant也是一个和Maven类似的项目构建工具,遗憾的是Ant的项目管理工具不能满足绝大多数开发人员的需要。通过检查 Ant 构建文件,很难发现项目的相关性信息和其它信息。下面就是Maven与Ant的比较。

Apache Ant

• Ant 没有正式的约定如一个一般项目的目录结构,你必须明确的告诉 Ant 哪里去找源代码,哪里放置输出

• Ant 是程序化的,你必须明确的告诉 Ant 做什么,什么时候做。你必须告诉它去编译,然后复制,然后压缩。

• Ant 没有生命周期,你必须定义目标和目标之间的依赖。你必须手工为每个目标附上一个任务序列。

Apache Maven

• Maven 拥有约定,因为你遵循了约定,它已经知道你的源代码在哪里。它把字节码放到 target/classes ,然后在 target 生成一个 JAR 文件。

• Maven 是声明式的。你需要做的只是创建一个 pom.xml 文件然后将源代码放到默认的目录。Maven 会帮你处理其它的事情。

• Maven 有一个生命周期,当你运行 mvn install 的时候被调用。这条命令告诉 Maven 执行一系列的有序的步骤,直到到达你指定的生命周期。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Java网络编程从入门到精通(1):Internet地址概述

转载:http://androidguy.blog.51cto.com/974126/214820        所有连入Internet的终端设备(包括计算机、PDA、打印机以及其他的电子设备)都有...

Java入门(概述篇)

Java语言是一种跨平台的面向对象的语言,由Sun公司于1995年正式推出。Java以其面向对象跨平台、支持多线程和分布式等特点在Web应用程序开发、网络编程。手机游戏等各个方面得到广泛的应用。Sun...

cucumber java从入门到精通(5)使用maven创建cucumber java项目

目录(?)[-] cucumber java从入门到精通5使用maven创建cucumber java项目解决工程化问题下载eclipse及配置新建maven项目配置及运行cucumber 转自:...

Java学习从入门到精通 1工具篇

  • 2007年10月23日 15:59
  • 18KB
  • 下载

Java从入门到精通之工具篇.doc

  • 2008年07月13日 15:23
  • 27KB
  • 下载

Java网络编程从入门到精通(24):实现HTTP断点续传下载工具(附源代码)

PS:本文中使用的下载url已经不能用于验证例子,可以下载自己电脑服务器上的文件 转自:http://www.blogjava.net/nokiaguy/archive/2009/06/archiv...
  • DADADIE
  • DADADIE
  • 2015年04月20日 15:14
  • 884

Java概述与入门

  • 2014年06月04日 22:06
  • 778KB
  • 下载

Java 入门概述

  • 2014年07月13日 14:23
  • 1.89MB
  • 下载

项目管理工具--Maven 使用入门

什么是MavenMaven是和Ant、gradle一样的项目管理工具,它的概念解释如下:Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建、报告和文档的软件项目管理工具。直...

Java概述新手入门

  • 2010年10月18日 10:36
  • 40KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java入门到精通---工具篇之Maven概述
举报原因:
原因补充:

(最多只允许输入30个字)