雨鸶

do what U love , love what U do ! 路漫漫其修远兮,吾将上下而求索

导航

构建Maven聚合工程

  最近,准备构建一个Maven的项目,基于模块化的结构思想,决定使用Maven的聚合工程进行构建。

环境准备:

(1)eclipse 这里推荐使用spring封装的eclipse(即STS) ,STS中集成了spring的相关插件,对使用spring的开发有帮助。下载地址:https://spring.io/tools/sts

(2)Maven 这里我选择的是 maven-3.3.9。 下载地址: http://maven.apache.org/download.cgi

我下载的是最新版本的Maven,这里选择的是bin,即编译完成的二进制包,如下图:

将下载的Maven的包,减压到一个目录下,我这里的目录是 (D:\maven-3.3.9),然后建立一个repo文件夹,我的目录为(D:\maven-3.3.9\repo)用来存放下载到本地的jar包,然后修改Maven的settings.xml文件(该文件在D:\maven-3.3.9\conf路径下),添加本地的存放目录( <localRepository>D:/maven-3.3.9/repo</localRepository> ),如下图所示:

基本上这样Maven的本地环境就搭建好了,如果想在命令行中直接能使用Maven的命令,可以配置Maven的环境变量。

 

这里,由于访问中央仓库的速度较慢,所以我自己配置了国内的私服,有需要的可以配置一下奥。如下:

附上具体的代码:

1 <mirror>
2   <id>CN</id>
3   <name>OSChina  Central</name>                                  
4   <url>http://maven.oschina.net/content/groups/public/</url>
5   <mirrorOf>central</mirrorOf>
6 </mirror>

到这里Maven的本地环境搭建完成。

 

将本地的Maven关联到eclipse上,如下:

这里可以选择在下载jar包的同时,把相应的源码和doc包下载下来,勾选下面的就行:

然后,点击OK,完成本地的关联。

 

这样就可以开始构建Maven的项目了,赶快开始吧。

首先,先构建父工程,新建Maven项目,选择标准的java项目(因为父工程不存在具体的东西只是聚合作用,故选择这个),如下图选择:

然后,下一步,这里会下载对应的骨架东西,等一会就好了,到如下:

这里填写自己的信息,然后,Finish。

打开这个工程的pom文件,修改它的打包方式为pom,如下图所示:

那么,这样一个聚合的父工程构建完成。

 

接下来就是模块的构建,首先,先构建一个common的工程,用来存放一些公共的代码(例如:工具方法...),这样就相当与把常用的公共代码抽取出来了,方便日后其他的项目使用。

构建方法同父工程,这里就不在赘述了,只是这里不需要修改pom文件中的打包方式。建完如下:

同理,构建具体的项目im-manager,这里将pom文件的打包方式修改为pom。建完如下:

接下来,按照层次结构构建对应的模块,这里我把模块分为 entitis、dao、server、web。

构建im-manager-entitis如下:

选中im-manager,右键 -- 新建 -- other... -- Maven Module ,如下:

下一步,

填入工程名 -- 下一步 -- Finish。这样im-manager-entitis工程构建完成。在im-manager工程的pom文件中可以看到这个工程,如下:

同理,建立im-manager-dao、im-manager-server。

建立im-manager-web的时候需要注意选择web的骨架,其他的同im-manager-entitis,如下:

这样,所有的模块就建立完成了。接下来就是添加它们的关系,这里im-commcon和im-manager是聚合到im-parent下的,建立他们的关系,

在im-commcon和im-manager的pom文件中的parent中添加im-parent,如下:

然后,添加依赖关系,依赖关系如下:

im-manager 依赖 im-common ,这样由于依赖的传递性,im-manager-entitis、im-manager-dao、im-manager-server和im-manager-web都有了im-commcon的使用权限,

im-manager-dao 依赖 im-manager-entitis

im-manager-server 依赖 im-manager-entitis、im-manager-dao 由于依赖的传递性只需要加 im-manager-dao 就行

im-manager-web 依赖 im-manager-entitis、im-manager-server 由于依赖的传递性只需要加 im-manager-server 就行

添加依赖如下:

这样,整个聚合工程就构建完成了。

 

posted on 2016-04-13 15:50  hezhh  阅读(744)  评论(0)    收藏  举报