功能摘要

简而言之,以下是 Maven 的主要特性:

  • 遵循最佳实践的简单项目设置 - 在几秒钟内启动新项目或模块
  • 所有项目的一致使用 - 意味着新开发人员进入项目没有加速时间
  • 高级依赖管理,包括自动更新、依赖关闭(也称为传递依赖)
  • 能够轻松地同时处理多个项目
  • 一个庞大且不断增长的库和元数据存储库,开箱即用,并与最大的开源项目安排到位,以实时提供最新版本
  • 可扩展,能够轻松地用Java 或脚本语言编写插件
  • 只需很少或无需额外配置即可即时访问新功能
  • 在 Maven 之外进行依赖管理和部署的 Ant 任务
  • 基于模型的构建:Maven 能够将任意数量的项目构建为预定义的输出类型,例如 JAR、WAR 或基于项目元数据的分发,而在大多数情况下无需编写任何脚本。
  • 项目信息的一致站点:使用与构建过程相同的元数据,Maven 能够生成一个网站或 PDF,包括您想要添加的任何文档,并添加到有关项目开发状态的标准报告中。此信息的示例可以在本网站左侧导航底部的“项目信息”和“项目报告”子菜单下查看。
  • 发布管理和分发发布:无需太多额外配置,Maven 将与您的源代码控制系统(如 Subversion 或 Git)集成,并根据某个标签管理项目的发布。它还可以将其发布到分发位置以供其他项目使用。Maven 能够发布单独的输出,例如 JAR、包含其他依赖项和文档的存档,或作为源分发。
  • 依赖管理:Maven 鼓励使用 JAR 和其他依赖的中央存储库。Maven 带有一种机制,项目的客户可以使用该机制从中央 JAR 存储库下载构建项目所需的任何 JAR,这与 Perl 的 CPAN 非常相似。这允许 Maven 的用户跨项目重用 JAR,并鼓励项目之间的通信以确保处理向后兼容性问题。