Maven2简单上手

时间:2024-04-04 15:18:48

?.什么是Maven,官方的解释:Maven is a project management tool which encompasses a project object model,a set of standards ,a project lifecycle,a dependency,management system, and logic for executing plugin goals at defined phases in a lifecycle

?.了解maven:
?Maven2的目标:
–使项目构建构成更容易;
–提供统一构建系统(编译、测试、持续整合...);
–提供高质量的项目信息(依赖、报告、site...);
–提供开发的最佳实践指南;
–能无缝的加入新的特性;
?对Maven2的错误认识:
–Maven2是一个站点和文档制作工具;
–Maven2扩展了Ant,使其可以下载到各种依赖包;
–Maven2使一系列可以重用的Ant脚本;

?.maven的主要功能:

  ?项目构建(builds)、文档编制(documentation)、报告(report)、依赖管理(dependencies)、配置管理(SCMS)、发布管理(releases)

?.maven可以构建那些类型的项目:ear,war,jar,zip,ejb
?.maven中的几个概念:

     ?POM(project object model) maven的核心文件,位于每个工程的根目录中,指示maven如何工作的数据元文件,类似于ant的build.xml文件

     ?依赖(dependency)为了能够构建或运行,java工程一般会依赖于其他的包。在maven中这些被依赖的包称为dependency.dependency一般是其他工程的artifact;

     ?仓库(repository):用于存放artifact,可以是本地仓库,也可以是远程仓库。maven默认的有一个远程仓库--central,可以从http://www.ibiblio.org/maven 下载其中的artifact.window上,本地仓库的默认地址是USER_Home\.m2\repository.

      ?GroupId:工程有一个全局的标识符,一般来说就是工程名。groupid有利于使用一个完全的包名,将一个工程从其他有类似名称的工程里区别出来。

       ?Artifact:工程将要产生或将要使用的文件,(jar文件,源文件,二进制文件,war文件,甚至是pom文件),每一个Artifact都有一 个groupid和artifactid的标识唯一识别 ,需要呗使用(依赖)的artifact都要放在仓库里面,否则maven无法找到他。

        ?插件(Plug-in) maven是由插件组织的,每一个功能都是由插件提供的。插件提供goal(类似ant中的target),并根据在pom中找到的元数据去完成工作、

        ?Snapshot:工程中可以(也应该)有一个特殊的版本,他的版本好包括SNAPSHOT字样。该版本告诉maven,该工程 正处于开发阶段,会经常更新(但还未发布),当其他工程使用此类型的artifact时,maven会在仓库中寻找该artifact的最新版本,并自动 下载使用该最新版,发布版本是release,当然这个也无需特殊标识。

?.maven如何工作:

Maven2简单上手
?.maven监管项目生命周期:
Maven2简单上手
?.maven安装:
 
1.到http://maven.apache.org/download.html 下载maven的最新稳定版
2.将下载的压缩包解压到任意安装目录(可任意目录)
3.配置好JAVA_HOME环境变量,并新增M2_HOME环境变量,值是你的解压目录
4.在path环境变量中添加maven的执行路径:%M2_HOME%\bin;
5.新开一个命令行窗口,输入:mvn –version 来测试安装,如果安装成功,提示输出如下:

  C:\Documents and Settings\Administrator>mvn -version

  Apache Maven 2.2.1 (r801777; 2009-08-07 03:16:01+0800)

  Java version: 1.5.0_08

  Java home: C:\Program Files\Java\jdk1.5.0_08\jre

  Default locale: zh_CN, platform encoding: GBK

  OS name: "windows 2003" version: "5.2" arch: "x86" Family: "windows"

6.其中可以看到maven的版本号,java的版本机器路径,以及操作系统等环境信息

7.当然,maven2可以在JDK1.4上工作,但强烈建议使用JDK5或者JDK6的java环境