Apache Maven是一个软件项目管理和综合工具。基于项目对象模型(POM)的概念,Maven可以从一个中心资料片管理项目构建,报告和文件。 将介绍如何使用Maven在Java开发,或任何其他的编程语言的任何项目。 Maven是什么? Maven是一个项目管理和综合工具。Maven提供了开发人员构建一个完整的生命周期框架。开发团队可以自动完成项目的基础工具建设,Maven使用标准的目录结构和默认构建生命周期。 在多个开发团队环境时,Maven可以设置按标准在非常短的时间里完成配置工作。由于大部分项目的设置都很简单,并且可重复使用,Maven让开发人员的工作更轻松,同时创建报表,检查,构建和测试自动化设置。 Maven提供了开发人员的方式来管理:
Builds Documentation Reporting Dependencies SCMs Releases Distribution mailing list概括地说,Maven简化和标准化项目建设过程。处理编译,分配,文档,团队协作和其他任务的无缝连接。 Maven增加可重用性并负责建立相关的任务。 Maven历史 Maven最初设计,是以简化Jakarta Turbine项目的建设。在几个项目,每个项目包含了不同的Ant构建文件。 JAR检查到CVS。 Apache组织开发Maven可以建立多个项目,发布项目信息,项目部署,在几个项目中JAR文件提供团队合作和帮助。 Maven目标 Maven主要目标是提供给开发人员:
项目是可重复使用,易维护,更容易理解的一个综合模型。 插件或交互的工具,这种声明性的模式。Maven项目的结构和内容在一个XML文件中声明,pom.xml 项目对象模型(POM),这是整个Maven系统的基本单元。有关详细信息,请参阅Maven POM的部分。 Apache Maven 是一种创新的软件项目管理工具,提供了一个项目对象模型(POM)文件的新概念来管理项目的构建,相关性和文档。最强大的功能就是能够自动下载项目依赖库。 在本教程中,它提供了如何使用 Apache Maven 3.x 的许多实例和解释。 Maven安装和配置 在 Windows 和 Ubuntu 的安装指南。
在Windows上安装Maven有关如何在 Windows 上安装 Maven 的文章。 启用Maven的代理访问要使用代理服务器来连接互联网,必须在 Maven 配置代理设置。Maven资源库 Maven 位置,中央和远程存储库配置和解释,有些术语可能需要在 Maven 使用前理解。
Maven本地资源库Maven 的本地资源库是用来存储项目的依赖库,默认的文件夹是 “.m2” 目录,可能需要将其更改为另一个文件夹。 Maven中央存储库Maven 中央存储库是 Maven 用来下载所有项目的依赖库的默认位置。 如何从Maven远程存储库下载?,如何添加远程库?并非所有的库存储在Maven的中央存储库,很多时候需要添加一些远程仓库来从其他位置,而不是默认的中央存储库下载库。 Maven依赖机制这里的文章是关于传统方式和Maven方式的依赖库的不同,并说明 Maven 会从那里搜索这些库。 定制库到Maven本地资源库很多库仍然不支持 Maven 的 pom.xml 的概念,这里有一个指南来说明如何包括“非Maven支持”库到 Maven 本地资源库中。基于Maven项目和Eclipse IDE 实例是使用Maven创建Java项目和Web应用程序,以及演示如何将其导入到Eclipse IDE中。
使用Maven创建Java项目使用 Maven 来创建一个 Java 项目。 转换基于Maven的Java项目支持Eclipse IDE指导转换基于Maven的Java项目来支持在 Eclipse IDE 中。 使用Maven创建Web应用程序项目使用Maven来创建Web应用程序项目。 转换基于Maven的Web应用程序支持Eclipse IDEMaven转换基于Web应用程序来支持Eclipse IDE中指南。 使用Maven模板创建项目另外,您也可以从 Maven 的模板来创建标准项目。Maven基本操作 一些基本的操作,编译,构建,单元测试,安装,网站生成和基于Maven部署项目。
使用Maven构建项目“mvn package” 来构建项目 使用Maven清理项目“mvn clean” 来清理项目 使用Maven运行单元测试“mvn test” 来执行单元测试 将项目安装到Maven本地资源库“mvn install” 打包和部署项目到本地资源库 生成基于Maven的项目文档站点“mvn site” 来为您的项目生成信息文档站点 使用“mvn site-deploy”部署站点(WebDAV例子)“mvn site-deploy” 通过WebDAV部署自动生成的文档站点到服务器 部署基于Maven的war文件到Tomcat“mvn tomcat:deploy” 以 WAR 文件部署到 Tomcat