项目开发之使用 maven
本文将详述 maven 在软件项目中的使用。首先讲述 maven 的基本工作原理及环境的搭建。然后讲述开发及配置管理人员如何使用 maven,最后将介绍 maven 与 eclipse 集成使用。 maven 原理 maven 是人为制订的一套开发规范,该规范定义了开发一个 java 项目时的各个细节。maven 通过 pom.xml 这一配置文件来描述一个项目。以下将介绍 pom.xml 文件及 maven 的主要概念。 pom.xml pom (project object model) 是对一个项目定义的模型。通过该配置文件可以完整地定义一个项目所涉及的如:项目放在哪里,项目依赖哪些东西,项目的作者是谁,项目如何构建等信息。maven 将通过该文件定义的信息对项目进行构建。 以下是 pom 文件的概要(详细内容参考:): project xmlns="" xmlns:xsi="" xsi:schemalocation=" " modelversion4.0.0modelversion ！-- 项目基本设置 -- gro pid...gro pid ！-- 项目所在组、机构 -- artifactid...artifactid ！-- 项目产品名称 -- version...version ！-- 项目产品版本 -- packaging...packaging ！-- 项目包类型 -- dependencies...dependencies ！-- 项目依赖包 -- parent...parent ！-- 项目所继承的父项目 -- dependencymanagement...dependencymanagement ！-- 继承父系的依赖 -- mod les...mod les ！-- 所包含的子模块 -- properties...properties ！-- 定义变量 -- ！-- 项目构建设置 -- b ild...b ild ！-- 项目报告生成设置 -- reporting...reporting ！-- 项目更多设置 -- name...name ！-- 项目名称 -- description...description ！-- 项目描述 --  rl... rl ！-- 项目网站 -- inceptionyear...inceptionyear ！-- 项目起始年份 -- licenses...licenses ！-- 项目许可 -- organization...organization ！-- 项目组织 -- developers...developers ！-- 项目开发人员 -- contrib tors...contrib tors ！-- 项目贡献者 -- ！-- 环境设置 -- iss emanagement...iss emanagement ！-- 问题管理 -- cimanagement...cimanagement mailinglists...mailinglists scm...scm ！-- 代码管理 -- prereq isites...prereq isites repositories...repositories ！-- 指定依赖包所在的仓库 -- pl ginrepositories...pl ginrepositories ！-- 指定插件所在的仓库 -- distrib tionmanagement...distrib tionmanagement ！-- 指定发布位置 -- profiles...profiles ！-- 针对不同的环境使用不同的配置,如开发与生产环境的数据库是不同的 -- project 从概要可以看到 maven 可以做代码管理,代码测试报告,项目网站,项目依赖关系等管理。 maven 运作 sample | pom.xml 项目定义文件 src 项目源文件 +main 项目主文件 test 项目测试文件 一个 maven 项目的目录结构如上所示,maven 通过项目定义文件(pom.xml)来对项目的源文件进行操作。源文件包含两部分,一部分是最终能够提供功能的主要文件(main),另一部分是用于测试主要功能的辅助文件(test)。 maven 程序的整个操作就是根据项目定义文件中的定义对源文件进行操作。maven 在 components.xml 文件中定义了一个项目的三种生命周期。每种生命周期有不同的阶段((详细参考  idesintrod ctionintrod ction-to-the-lifecyclel#lifecycle_reference))。 maven 的每个生命周期定义了不同的阶段,每个阶段都可以设置该阶段所使用的插件及插件中的任务。