Maven学习笔记(一)

对Maven的理解

先来看下Maven官网的定义:

Introduction

Maven, a Yiddish word meaning accumulator of knowledge, began as an attempt to simplify the build processes in the Jakarta Turbine project. There were several projects, each with their own Ant build files, that were all slightly different. JARs were checked into CVS. We wanted a standard way to build the projects, a clear definition of what the project consisted of, an easy way to publish project information and a way to share JARs across several projects.

以前,项目都是独立开发,都有它们自己的Ant编译文件,这些Ant都是有不同的(即使是很小的不同),当要把几个项目模块打包合并时,就会产生问题。

而Maven的诞生,就是为了简化项目构建流程。它提供了编译项目的标准,更利于公布项目和跨项目共享。

The result is a tool that can now be used for building and managing any Java-based project. We hope that we have created something that will make the day-to-day work of Java developers easier and generally help with the comprehension of any Java-based project.

这就是一个构建和管理的任何基于Java的项目的工具
可能单看定义还不是很清晰,下面我想说一下Ant的理解

Ant

当一个代码项目大了以后,每次重新编译,打包,测试等都会变得非常复杂而且重复,因此c语言中有make脚本来帮助这些工作的批量完成。在Java 中应用是平台无关性的,当然不会用平台相关的make脚本来完成这些批处理任务了,ANT本身就是这样一个流程脚本引擎,用于自动化调用程序完成项目的编译,打包,测试等。除了基于JAVA是平台无关的外,脚本的格式是基于XML的,比make脚本来说还要好维护一些。

Ant就是流程脚本,本质需求就是对项目的管理:下面有一些常用的ant脚本解决的任务——

  • 任务1:usage 打印本脚本的帮助信息(缺省)
  • 任务2:clean <-- init 清空初始化环境
  • 任务3:javadoc <-- build <-- init 生成JAVADOC
  • 任务4:jar <-- build <-- init 生成JAR
  • 任务5:all <-- jar + javadoc <-- build <-- init 完成以上所有任务:jar javadoc

你可能感兴趣的:(Maven学习笔记(一))