16.3 导入Maven项目
较之于创建新的Maven项目,实际工作中更常见的是导入现有的Maven项目。m2eclipse支持多种导入的方式,其中最常用的是导入本地文件系统的Maven项目以及导入SCM仓库中的Maven项目。
单击菜单栏中的File,然后选择Import开始导入项目,如图16-4所示。
从图16-4中可以看到在Maven类中有4种导入方式,常用的就是第一种和第二种,即导入SCM仓库中的Maven项目和导入本地文件系统的Maven项目。
图16-4中的Install or deploy an artifact to a Maven repository能让用户将任意的文件安装到Maven的本地仓库。如果该文件没有对应的POM,则需要为其定义Maven坐标。
图 16-4 开始导入Maven项目
图16-4中的Materialize Maven Projects能让用户导入第三方的Maven项目,用户只需要提供一些关键字如nexus-api,然后选择要导入的项目,m2eclipse就能基于索引找到其对应的POM信息。如果该POM中包含了SCM信息,m2eclipse就能直接下载该项目的源码并导入到m2eclipse中。当用到某个第三方类库,同时想研究其源码的时候,这一特性就非常有用,你不再需要打开浏览器去寻找该项目的信息,简单地在m2eclipse中操作几步就能完成第三方项目的导入。当然,这一特性的前提是第三方类库提供了正确的SCM信息。大多数开源项目在往Maven中央仓库提交构件的时候都会提供完整的信息,但也有例外,为了避免信息不完整的项目进入Maven中央仓库,最新的规则已经强制要求提交者提供完备的信息,如SCM、许可证以及源码包等。这无疑能帮助m2eclipse表现得更好。
16.3.1 导入本地Maven项目
现在详细介绍一下如何导入本地Maven项目。选择图16-4中的Existing Maven Projects项,然后在弹出的对话框中选择本地项目所在的目录,如图16-5所示。
m2eclipse能够自动识别出目录中所包含的Maven项目,如果发现是多模块项目,则会列出所有的模块。用户可以根据自己的需要选择要导入的模块,然后单击Finish按钮。m2eclipse会执行导入项目信息、更新下载项目依赖,以及重建工作区等操作。根据实际项目的情况,这个过程可能花费几十秒到十几分钟。
图 16-5 导入现有Maven项目