模块化建立项目流程(Maven聚合模块)

先说项目使用Maven的好处

1、项目构建。Maven定义了软件开发的整套流程体系,并进行了封装,开发人员只需要指定项目的构建流程,无需针对每个流程编写自己的构建脚本。

2、依赖管理。除了项目构建,Maven最核心的功能是软件包的依赖管理,能够自动分析项目所需要的依赖软件包,并到Maven中心仓库去下载。

A)管理依赖的jar包

B)管理工程之间的依赖关系。

传统工程结构

Maven管理的工程结构:

不使用maven:工程部署时需要手动复制jar包。完成工程构建。非常繁琐。

使用maven进行工程构建:

使用maven可以实现一步构建。

1.创建springmvc-parent

1.1创建maven工程

1.1.2修改pom文件

[html]

4.12

4.1.3.RELEASE

3.2.8

1.2.2

1.2.15

5.1.32

1.6.4

2.4.2

1.0.9

4.3.5

1.2

2.5

2.0

2.5

3.3.2

1.3.2

3.3

3.4.2-fix

0.9.1

1.3.1

2.7.2

4.10.3

joda-time

joda-time

${joda-time.version}

org.apache.commons

commons-lang3

${commons-lang3.version}

org.apache.commons

commons-io

${commons-io.version}

commons-net

commons-net

${commons-net.version}

com.fasterxml.jackson.core

jackson-databind

${jackson.version}

org.apache.httpcomponents

httpclient

${httpclient.version}

junit

junit

${junit.version}

test

org.slf4j

slf4j-log4j12

${slf4j.version}

org.mybatis

mybatis

${mybatis.version}

org.mybatis

mybatis-spring

${mybatis.spring.version}

com.github.miemiedev

mybatis-paginator

${mybatis.paginator.version}

com.github.pagehelper

pagehelper

${pagehelper.version}

mysql

mysql-connector-java

${mysql.version}

com.alibaba

druid

${druid.version}

org.springframework

spring-context

${spring.version}

org.springframework

spring-beans

${spring.version}

org.springframework

spring-webmvc

${spring.version}

org.springframework

spring-jdbc

${spring.version}

org.springframework

spring-aspects

${spring.version}

jstl

jstl

${jstl.version}

javax.servlet

servlet-api

${servlet-api.version}

provided

javax.servlet

jsp-api

${jsp-api.version}

provided

commons-fileupload

commons-fileupload

${commons-fileupload.version}

redis.clients

jedis

${jedis.version}

org.apache.solr

solr-solrj

${solrj.version}

${project.artifactId}

org.apache.maven.plugins

maven-resources-plugin

2.7

UTF-8

org.apache.maven.plugins

maven-compiler-plugin

3.2

1.7

1.7

UTF-8

org.apache.tomcat.maven

tomcat7-maven-plugin

2.2

1.1.3 将spring-parent安装到本地仓库

2.创建spring-common

注意:我们这里创建common项目的用途是用来放其他工程需要用到的通用组件、工具类、以及单元测试等等,可以让整个结构体系看起来更加清晰,明确

2.1.1 创建工程(由于我之前建过这个项目所以我这里只是演示下)

2.1.2修改pom文件

[html]

joda-time

joda-time

org.apache.commons

commons-lang3

org.apache.commons

commons-io

commons-net

commons-net

com.fasterxml.jackson.core

jackson-databind

org.apache.httpcomponents

httpclient

junit

junit

test

org.slf4j

slf4j-log4j12

2.1.3 更新工程

右键项目->Maven->Update Project Configuration

3.创建spring-manager

注意这是个pom工程

5.1修改pom文件

[html]

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

com.yanl

springmvc-parent

0.0.1-SNAPSHOT

com.yanl

spring-manager

0.0.1-SNAPSHOT

pom

聚合工程,包含4个模块三个jar模块entity,mapper,service以及war模块controller

com.yanl

spring-common

0.0.1-SNAPSHOT

spring-manager-entity

spring-manager-mapper

spring-manager-service

spring-manager-web

org.apache.tomcat.maven

tomcat7-maven-plugin

8080

/

4.创建spring-manager-entity

注意:这是一个在manager里面的模块所以右键spring-manager项目选择新建项目的Maven Module

5.创建spring-manager-mapper

5.1修改pom文件

[html]

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

com.yanl

spring-manager

0.0.1-SNAPSHOT

spring-manager-mapper

com.yanl

spring-manager-entity

0.0.1-SNAPSHOT

org.mybatis

mybatis

org.mybatis

mybatis-spring

com.github.miemiedev

mybatis-paginator

com.github.pagehelper

pagehelper

mysql

mysql-connector-java

com.alibaba

druid

6.创建spring-manager-service

6.1修改pom文件

[html]

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

com.yanl

spring-manager

0.0.1-SNAPSHOT

spring-manager-service

service模块

com.yanl

spring-manager-mapper

0.0.1-SNAPSHOT

org.springframework

spring-context

org.springframework

spring-beans

org.springframework

spring-webmvc

org.springframework

spring-jdbc

org.springframework

spring-aspects

7.创建spring-manager-web(这个就是我们的前端控制器controller)

7.1修改pom文件

[html]

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

com.yanl

spring-manager

0.0.1-SNAPSHOT

spring-manager-web

war

com.yanl

spring-manager-service

0.0.1-SNAPSHOT

jstl

jstl

${jstl.version}

javax.servlet

servlet-api

${servlet-api.version}

provided

javax.servlet

jsp-api

${jsp-api.version}

provided

commons-fileupload

commons-fileupload

${commons-fileupload.version}

至此我们的工程建立完成,我们需要测试这个工程能不能用还需要配置如下

8.配置tomcat插件

运行web工程需要添加一个tomcat插件。插件必须添加到spring-manager工程中。因为spring-manager是聚合工程。在运行时需要把子工程聚合到一起才能运行。

上面在创建spring-manager时我已经配置了,这里在配下,提醒。

[html]

org.apache.tomcat.maven

tomcat7-maven-plugin

8080

/

9.运行聚合工程

看到如下,说明运行成功

然后打开http://localhost:8080/你会看到

大功告成,说明我们的聚合工程没有问题,这里有几点需要解释下

10.1.关于mybatis分页插件pagehelper的问题

有关分页插件请看我之前写过的一篇pagehelper文章。

10.2  Java编译插件

10.3  Build时控制台报错,一般是提示parent,common没有安装,你右键这两个项目安装下在运行spring-manager就可以了。

10.4 需要用到的仓库我上传到我的资源里面了(由于文件太大,我传百度网盘了,传送门 http://pan.baidu.com/s/1cmrIgu),如果maven下载不了直接将这个仓库覆盖你自己的本地仓库,一般本地仓库在C盘用户.m2文件夹下,祝你成功。

10.5 工程项目在我资源页http://download.csdn.net/detail/lemontreey/9738477,我没有clean所以比较大。

先说项目使用Maven的好处

1、项目构建。Maven定义了软件开发的整套流程体系,并进行了封装,开发人员只需要指定项目的构建流程,无需针对每个流程编写自己的构建脚本。

2、依赖管理。除了项目构建,Maven最核心的功能是软件包的依赖管理,能够自动分析项目所需要的依赖软件包,并到Maven中心仓库去下载。

A)管理依赖的jar包

B)管理工程之间的依赖关系。

传统工程结构

Maven管理的工程结构:

不使用maven:工程部署时需要手动复制jar包。完成工程构建。非常繁琐。

使用maven进行工程构建:

使用maven可以实现一步构建。

1.创建springmvc-parent

1.1创建maven工程

1.1.2修改pom文件

[html]

4.12

4.1.3.RELEASE

3.2.8

1.2.2

1.2.15

5.1.32

1.6.4

2.4.2

1.0.9

4.3.5

1.2

2.5

2.0

2.5

3.3.2

1.3.2

3.3

3.4.2-fix

0.9.1

1.3.1

2.7.2

4.10.3

joda-time

joda-time

${joda-time.version}

org.apache.commons

commons-lang3

${commons-lang3.version}

org.apache.commons

commons-io

${commons-io.version}

commons-net

commons-net

${commons-net.version}

com.fasterxml.jackson.core

jackson-databind

${jackson.version}

org.apache.httpcomponents

httpclient

${httpclient.version}

junit

junit

${junit.version}

test

org.slf4j

slf4j-log4j12

${slf4j.version}

org.mybatis

mybatis

${mybatis.version}

org.mybatis

mybatis-spring

${mybatis.spring.version}

com.github.miemiedev

mybatis-paginator

${mybatis.paginator.version}

com.github.pagehelper

pagehelper

${pagehelper.version}

mysql

mysql-connector-java

${mysql.version}

com.alibaba

druid

${druid.version}

org.springframework

spring-context

${spring.version}

org.springframework

spring-beans

${spring.version}

org.springframework

spring-webmvc

${spring.version}

org.springframework

spring-jdbc

${spring.version}

org.springframework

spring-aspects

${spring.version}

jstl

jstl

${jstl.version}

javax.servlet

servlet-api

${servlet-api.version}

provided

javax.servlet

jsp-api

${jsp-api.version}

provided

commons-fileupload

commons-fileupload

${commons-fileupload.version}

redis.clients

jedis

${jedis.version}

org.apache.solr

solr-solrj

${solrj.version}

${project.artifactId}

org.apache.maven.plugins

maven-resources-plugin

2.7

UTF-8

org.apache.maven.plugins

maven-compiler-plugin

3.2

1.7

1.7

UTF-8

org.apache.tomcat.maven

tomcat7-maven-plugin

2.2

1.1.3 将spring-parent安装到本地仓库

2.创建spring-common

注意:我们这里创建common项目的用途是用来放其他工程需要用到的通用组件、工具类、以及单元测试等等,可以让整个结构体系看起来更加清晰,明确

2.1.1 创建工程(由于我之前建过这个项目所以我这里只是演示下)

2.1.2修改pom文件

[html]

joda-time

joda-time

org.apache.commons

commons-lang3

org.apache.commons

commons-io

commons-net

commons-net

com.fasterxml.jackson.core

jackson-databind

org.apache.httpcomponents

httpclient

junit

junit

test

org.slf4j

slf4j-log4j12

2.1.3 更新工程

右键项目->Maven->Update Project Configuration

3.创建spring-manager

注意这是个pom工程

5.1修改pom文件

[html]

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

com.yanl

springmvc-parent

0.0.1-SNAPSHOT

com.yanl

spring-manager

0.0.1-SNAPSHOT

pom

聚合工程,包含4个模块三个jar模块entity,mapper,service以及war模块controller

com.yanl

spring-common

0.0.1-SNAPSHOT

spring-manager-entity

spring-manager-mapper

spring-manager-service

spring-manager-web

org.apache.tomcat.maven

tomcat7-maven-plugin

8080

/

4.创建spring-manager-entity

注意:这是一个在manager里面的模块所以右键spring-manager项目选择新建项目的Maven Module

5.创建spring-manager-mapper

5.1修改pom文件

[html]

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

com.yanl

spring-manager

0.0.1-SNAPSHOT

spring-manager-mapper

com.yanl

spring-manager-entity

0.0.1-SNAPSHOT

org.mybatis

mybatis

org.mybatis

mybatis-spring

com.github.miemiedev

mybatis-paginator

com.github.pagehelper

pagehelper

mysql

mysql-connector-java

com.alibaba

druid

6.创建spring-manager-service

6.1修改pom文件

[html]

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

com.yanl

spring-manager

0.0.1-SNAPSHOT

spring-manager-service

service模块

com.yanl

spring-manager-mapper

0.0.1-SNAPSHOT

org.springframework

spring-context

org.springframework

spring-beans

org.springframework

spring-webmvc

org.springframework

spring-jdbc

org.springframework

spring-aspects

7.创建spring-manager-web(这个就是我们的前端控制器controller)

7.1修改pom文件

[html]

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

com.yanl

spring-manager

0.0.1-SNAPSHOT

spring-manager-web

war

com.yanl

spring-manager-service

0.0.1-SNAPSHOT

jstl

jstl

${jstl.version}

javax.servlet

servlet-api

${servlet-api.version}

provided

javax.servlet

jsp-api

${jsp-api.version}

provided

commons-fileupload

commons-fileupload

${commons-fileupload.version}

至此我们的工程建立完成,我们需要测试这个工程能不能用还需要配置如下

8.配置tomcat插件

运行web工程需要添加一个tomcat插件。插件必须添加到spring-manager工程中。因为spring-manager是聚合工程。在运行时需要把子工程聚合到一起才能运行。

上面在创建spring-manager时我已经配置了,这里在配下,提醒。

[html]

org.apache.tomcat.maven

tomcat7-maven-plugin

8080

/

9.运行聚合工程

看到如下,说明运行成功

然后打开http://localhost:8080/你会看到

大功告成,说明我们的聚合工程没有问题,这里有几点需要解释下

10.1.关于mybatis分页插件pagehelper的问题

有关分页插件请看我之前写过的一篇pagehelper文章。

10.2  Java编译插件

10.3  Build时控制台报错,一般是提示parent,common没有安装,你右键这两个项目安装下在运行spring-manager就可以了。

10.4 需要用到的仓库我上传到我的资源里面了(由于文件太大,我传百度网盘了,传送门 http://pan.baidu.com/s/1cmrIgu),如果maven下载不了直接将这个仓库覆盖你自己的本地仓库,一般本地仓库在C盘用户.m2文件夹下,祝你成功。

10.5 工程项目在我资源页http://download.csdn.net/detail/lemontreey/9738477,我没有clean所以比较大。


相关内容

  • 我的Maven之旅(5)-建立你自己的本地仓库(Maven仓库管理-Nexus)
  • 前面我讲到为什么要使用Maven, Maven的安装,以及如何与IDE集成等,前面的介绍可以认为是一个Hello World,教你如何利用Maven来进行项目开发,如何结合IDE实现一键式DEBUG,从现在开始我们开始深入探讨Maven的一些高级内容. 这一个章节,我分两部分来介绍,首先介绍一下Ma ...

  • 高校教师管理系统_详细设计文档
  • [项目名称] 详细设计说明书 2009 年 05 月 9 日 1.引言 1.1编写目的 高校的教师档案管理一直是一个非常棘手的问题.以往的档案管理多采用人工管理的方式,以电子文档和纸质文档存储.然而教师档案的动态性使得这种方式捉襟见肘.教师档案的实际变化同档案记录同步性较差.另一方面各大高校往往有自 ...

  • 网上订餐系统
  • 网上订餐系统 摘要 二十一世纪是一个集数字化,网络化,信息化的,以网络为核心的社会.中国的网民充分领略到"畅游天地间,网络无极限" 所带来的畅快.随着Internet 的飞速发展,使得网络的应用日益的广泛.如电子商务,电子政务,网上医疗,网上娱乐,网络游戏,网络教学等.本次毕业设 ...

  • Apache 门户项目组介绍
  • 级别: 初级 廖 健, 首席实施顾问 2006 年 11 月 02 日 本文将快速浏览 Apache 门户项目组的所有项目,并着重介绍门户项目组中的核心项目-Jetspeed-2. JEE作为建立在Java平台上的企业级应用解决方案,经过这些年不断发展,已经成为企业级开发的工业标准和首选平台.众多厂 ...

  • 管理信息系统答案
  • 管理信息系统参考答案(仅供参考哈) 一.名词解释 范式:是关系型数据库关系模式规范化的标准. 数据模型:用来描述数据库数据的结构.定义在结构上的操作以及数据间的约束的一组概念和定义,描述了数据库静态特征与动态行为,为数据库的表示和操作提供框架. 外模式:通常是模式的一个子集,故又称外模式为子模式.由 ...

  • 智慧物业整体规划方案0517V1.0
  • 智慧社区(物业)解决方案 一.智慧物业整体规划 建立"社区物业 + 社区住户 + 周边商家"之间的商务模式,并与多家大型超市联合,打造成"中国社区电子化运营商".是面向全国基于手机上的开放式智慧物业应用平台,包括物业管理系统.物业账单及缴费系统.短信服务系统. ...

  • 企业管理系统毕业论文
  • 北 京 青 年 政 治 学 院 毕 业 论 文 题 目 系 别 专 业 姓 名 学 号 指导教师 目录 1. 绪论 ............................................................ 1 1.1应用目的与重要性.................. ...

  • 信息系统原理与工程试题
  • <信息系统原理与工程>考试试卷15 时间:120分钟 一.选择题(每题1分,共20分) 1. 下列工具中哪一项不是结构化系统分析工具: ( ) A. 决策树 B. 数据存取分析图 C. 结构图 D. 形式化语言 2. 要想描述一个条件较多的复杂的决策,最合适的工具是: ( ) A. 数据 ...

  • 基于云计算平台的网站群建设方案高校版
  • 基于云计算平台的 教育门户网站群解决方案 (高校版) 湖南省教育管理信息中心 2014年10月22日 目 录 1 . 现状分析 ...................................................................................... ...