项目管理论文发表应用Maven简化项目管理

所属栏目:矿业论文 发布日期:2014-06-27 16:59 热度:

  项目作为Maven的基本概念,包含pom.xml的任何一个文件都是一个项目,及项目被定义为项目对象模型。项目之间可以相互依赖,一个项目也可能由多个子项目构成,另外,项目之间还可以继承。

  【摘要】我们通常将Ant用于java项目的构建,编译、打包等任务都可以在一个build.xml中完成,碰到的问题也是很多的,比如每个项目结构的build.xml相差较大等,Maven的出现,极大的改观了这个问题。文章重点介绍了使用Maven管理项目的基本概念。项目对象模型、依赖管理系统、仓库与插件构成了Maven强大功能的基础。总结了Maven在项目管理中的最佳实践,从建立统一的项目结构到项目依赖包的管理,以及在Eclipse集成开发环境中集成、使用Maven的特性。

  【关键词】项目管理论文发表,Maven,项目,仓库,依赖管理,插件

  1Maven概述

  什么是Maven?Apache给Maven的定义是:Maven是一个项目管理工具,由一个项目对象模型,一组标准集合,一个项目生命周期,一个依赖管理系统,以及用来定义在生命周期阶段中插件目标的逻辑组成。

  2Maven基础

  坐标是一个项目的唯一标识,它包括groupId、artifactId和version。groupId定义了项目属于哪个组,这个组往往和项目所在的组织或公司存在关联,artifactId定义了当前Maven项目在组中唯一的ID,version顾名思义就是当前项目的版本。

  在Maven中另一个重要概念就是仓库(Repository)。因为坐标机制,不同Maven项目使用任何一个构建都是完全相同的。在此基础上,Maven可以在一个统一的位置存储所有Maven项目共享的构件,这个统一的位置就是仓库。因为任何一个构件都有其唯一的坐标,根据这个坐标可以定义其在仓库中的唯一存储路径,这便是Maven的仓库布局方式。譬如:groupId=org.testng,artifactId=testng,version=5.8,classifier=jdk15,packaging=jar。生成的路径:org/testng/testng/5.8/testng-5.8-jdk15.jar。

  仓库的功能是非常强大的,特别是私服,它可以节省外网带宽,加速Maven构建,部署第三方构建,提高稳定性、增强控制,降低中央仓库负荷等。有了仓库不同的项目不需要再各自包含所依赖的三方库,仓库会自动在多个项目之间共享库。此外,不同项目也可以调用mvninstall产生自己的构建件,然后部署到中央仓库、远程仓库或者私服,其他项目如果有依赖,可以很方便的下载到。

  Maven强大的真正原因在于其插件机制,Maven的核心几乎不做什么实际的事情,除了解析一些xml文档,管理生命周期和插件之外,什么也不懂。其余功能都是委派给一组Maven插件去实现,所以Maven下载很小,在实际执行Maven任务时,根据需要自动下载相应的插件。插件能够影响Maven的生命周期,提供对目标的访问。Maven插件大部分用java开发,同时也支持BeanShell、Ant编写的插件,用户自己也可以编写专用的插件。

  3Maven管理项目的实践

  3.1标准化的项目结构

  定义了项目的标准模版,这是Maven的一个重要的特性。使用命令行式操作,通过命令mvnarchetype:create-DgroupId=com.test-DartifactId=test-app,就创建了一个简单的Maven项目,无需一行脚本,就能实现众多功能。同时,Maven还提供了类型模版,通过添加参数-DarchetypeArtifactId={类型名}即可完成创建。

  3.2类库的管理

  类库管理是Maven的一个重要特色。在pom.xml中配置好jar包的版本和依赖,能方便实现对jar文件的管理。同时Maven通过对pom.xml文件的管理来处理jar包间的依赖。比如有一个jar文件为google.jar,同级目录必然有一个和它相关的pom.xml文件,这个pom.xml文件肯定配置了google.jar对其他jar包的依赖。这时需要我们手动去下载依赖包,在执行Maven命令时会自动下载相应的依赖包,这叫传递性依赖,只需配置对google的依赖而无需关心google对其他jar的依赖。

  由于pom.xml文件对jar包的管理,使得Maven有一个特性:项目文件的容量很小。以前一个web项目里,库文件都需要存放到WEB-INF/lib下,同时存入源代码库中,动辄几十M。通过Maven管理,仅需要一个pom.xml,项目文件一般几百K。

  3.3Maven和Eclipse的结合

  Maven和Eclipse的结合,使得Maven的使用更加方便。这得益于m2eclipse插件,它联结了Eclipse的易用性和Maven的强大功能,从而给Eclipse带来了稳定的自动化构建过程[2]。首先,是和项目创建导入相关的特性:如从SVN签出项目、利用预定义原型为建立项目提供向导功能。其次,告别命令行,根据菜单、窗口直观操作。也可以自己组合Maven命令。再次,m2eclipse内置中央仓库检索功能,不需再通过浏览器访问中央仓库。最后,m2eclipse提供了对pom.xml文件的编译功能,使得依赖包、仓库、插件等元素的编译变得更加直观。

  4结束语

  本文主要讲述了使用Maven管理项目需要了解的一些基本概念,Maven作为一个新的项目构建工具,简单易用,使得项目的构建部署不再混乱不堪,整个过程更加规范、有序。然后讨论了Maven管理项目的实践,如何建立标准化的项目结构、类库管理,最后介绍了在Eclipse集成环境中使用Maven的优势。

文章标题:项目管理论文发表应用Maven简化项目管理

转载请注明来自:http://www.sofabiao.com/fblw/ligong/kuangye/21526.html

相关问题解答

SCI服务

搜论文知识网的海量职称论文范文仅供广大读者免费阅读使用! 冀ICP备15021333号-3