说起Maven,真的是很好用的工具啊!啊啊!啊啊啊!
本文只涉及笔者认为有必要提及的小细节,Maven的使用指引请参考官方文档和其他相关文章。
Q&A开始
关于Maven
- Maven是什么?
Maven是一个构建工具。当前主要被设计用来构建Java工程,但是和Ant等程序一样,它具有很强的扩展性。 - 使用Maven有什么好处?
好处有很多,简单罗列如下:- 完整的项目描述
Maven的项目配置文件POM.xml可以描述软件项目方方面面的关联信息,包括:软件平台,组件依赖,SCM服务器,开发者,跟踪服务器,部署信息等等。 - 规范的软件生命周期
一个软件的开发过程中需要不断的迭代:编码、测试、分析、部署……Maven可以让这一切自动化,从而解放配置管理负担,提高项目质量。 - 事实标准
Maven有作为开源界事实标准的潜在能力,虽然它对Java以外的程序员不够友好,虽然他没有Ruby Gem那么好用,标准的好处就是,人人都可以轻易的通过解读Maven配置了解项目相关信息。
- 完整的项目描述
恩,我们继续。。
Maven安装
- 如何安装?
参看官方手册;一些建议,请将安装目录加入System PATH,方便使用Maven命令;Maven目录名称可以使用通用一点的。 - 下载的软件包在哪里?
默认Maven会下载到用户目录下,请自行修改mavn/conf/config.xml中相关内容 - Maven的Repository太慢了!
事实上,有很多镜像供你选择,请使用Google搜索maven repository,会有很多WebDAV格式的结果,将他们中最快的添加到你的配置文件即可。
项目组织
- 如何和Eclipse结合
Maven下面有几个IDE用插件,个人比较推荐q4e,使用之后在拥有pom.xml的Eclipse项目中选择使用Maven Dependencies Management就可以引入Maven依赖了。
安装Maven和q4e后的Step by Step:- 使用命令行进入开发目录,一般为Eclipse的工作目录
- 输入命令 mvn archetype:create -DgroupId=org.ave7.example -DartifactId=app-example Maven将按照默认layout创建新项目
- cd app-example 输入 mvn eclipse:eclipse生成eclipse配置文件,如果是wtp项目,请使用命令 mvn eclipse:eclipse -DwtpVersion=1.5 (其他选项1.0 1.5 R7)
- 启动eclipse,选择import -> existing project into workspace 选择刚创建的项目
- 在project上点右键,maven 启用 enable maven dependencies
- 自行调整class path 等
- 如何协调依赖版本
引用不同的依赖时可能造成间接依赖的版本不一致,除了exclude以外,还可以在parent pom中使用<dependencyManagement>将可能用到的artifact及其版本包括其中,在dependencies是,只需指明groupId和artifactId即可。 - 生成测试覆盖率报告
在pom中加入
<reporting>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
</plugin>
</plugins>
</reporting>
在相应目录命令行输入 mvn site 即可
下期内容预告:Maven与SCM
您可能有兴趣的文章:
- 一周生活小结
- Private plan for next few weeks
- 教学贴:如何编写Maven2插件
- Java Module and Maven
- Maven need to act as Wikipedia

This work, unless otherwise expressly stated, is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.
After the day