Maven介绍
Apache Maven是一个软件项目管理和综合工具。基于项目对象模型(POM)的概念,Maven可以从一个中心资料片管理项目构建,报告和文件。
Maven是一个项目管理和综合工具。Maven提供了开发人员构建一个完整的生命周期框架。开发团队可以自动完成项目的基础工具建设,Maven使用标准的目录结构和默认构建生命周期。
下载及安装Maven
下载 Maven
下载地址:http://maven.apache.org/download.cgi
笔者下载的是 Maven 3.3.9 , 下载后,直接解压到系统盘根目录即可。
添加环境变量
Maven需要添加 M2_HOME 和 MAVEN_HOME 两个系统变量,分别是:
M2_HOME:Maven的安装目录,如:C:\apache-maven-3.3.9
MAVEN_HOME :Maven的安装目录,如:C:\apache-maven-3.3.9
另外把 %M2_HOME%\bin 追加到系统环境变量 Path 中。
测试
启动命令行,输入 mvn -version ,如果能看到 Maven 版本相关信息,则 Maven 安装成功。
Maven基本配置
在Maven的安装目录conf目录下有一个 settings.xml 这个文件是配置Maven环境的,我们首先打开这个xml文件,可以看到这里有许多配置节点,默认都是注释调的,因为缺省情况下,Maven有一套默认的配置参数。
设置本地仓库位置
我们可以指定一个本地仓库(localRepository)的位置,缺省情况下,Maven会在当前用户目录下创建 .M2 作为本地仓库的位置。如配置到以下位置:
设置远程仓库镜像
Maven默认的远程仓库是官方的中心库,国内访问速度比较慢。笔者一般将远程库设置成阿里云上的一个代理库,地址是 http://maven.aliyun.com/nexus/content/groups/public/ 在 mirrors 节点下设置,如下:
Intellij IDEA中配置Maven
启动 IDEA,进入 Settings 设置界面,在搜索框中输入 Maven 找到 Maven 配置页。
选择 Maven 主目录,设置 Setting 文件位置及本地仓库的位置。
展开 Maven 下的 Runner 节点,在 VM Options中输入:-DarchetypeCatalog=internal ,配置这个参数的作用,我再后面再详说。如下:
使用Maven创建WebApp
环境设置好了,下面就可以利用Maven创建一个简单的WebApp了。
启动 IDEA,选择项目原型
启动 IDEA,点击 Create New Project,或 File -> New -> Project,在左边列表选择 Maven,勾上 Create from archetype 复选框,并在下面的列表找到 maven-archetype-webapp ,点击 Next。
注:
1. Maven 为我们提供了许多项目原型,基于原型创建项目可以省去很多项目构建的工作。
2. 常用的项目原型有 maven-archetype-quickstart , maven-archetype-webapp 等。
3. 还可以自定义项目原型,这个笔者在后面的文章中会详细介绍。
输入 Maven 项目坐标信息
输入 Maven 项目的坐标信息,如:
注:GroupId , ArtifactId , Version 被称为 Maven 项目的坐标,三者组合可以唯一确定一个项目,这个概念在 Maven 项目管理中非常重要!
完成 Maven 项目创建
点击 Next,直到项目创建完成,项目创建完成如下:
可以看到,Maven 已经为我们的WebApp创建了基本的骨架。
注:
1. 首次创建 Maven 项目,需要下载很多相关项目到本地仓库,所以这个过程可能比较慢。
2. 如果创建项目的过程中一直卡在 Create project by batch mode ,说明没有指定 archetypeCatalog 为 internal,Maven 从远程服务器下载 archetypeCatalog,所以非常慢,可以在 IDEA 的 Settings 中设置 VM Options,如前文介绍的那样。
3. 如果项目中有报错提示,可能是因为某些依赖项目没有下载到本地仓库,可以在 Maven Projects 面板中点击“ 同步”按钮,这样错误提示就会消失了。
在IDEA中运行 Maven WebApp 程序
选择 Run -> Edit Configurations,点击 + 号添加一个 Tomcat Server。
输入一个名称,然后切换到 Deployment 页,点击 + 号,选择一个 Artifact,通常这里会出现两个 Artifact ,一般选择 带 exploded 的那个,然后在 Application context 中输入站点名称,如下:
点击 Apply 按钮 我们的 WebApp 就部署好了,点击 Run 即可运行。