http://blog.csdn.net/yerenyuan_pku/article/details/72672389

上文我们一起学习了如何使用maven tomcat插件来启动web工程,本文我们就来一起学习如何使用maven tomcat插件启动聚合工程。 
之前我就讲过,淘淘商城的taotao-manager工程是个聚合工程,它下面有taotao-manager-dao、taotao-manager-pojo、taotao-manager-interface、taotao-manager-service四个子工程,其中taotao-manager-service是个web工程,其它都是jar工程。 
既然taotao-manager-service是个web工程,那么为什么我们不选择聚合工程下的它来启动呢?这是因为taotao-manager-service与其它子工程是平级关系,而且它依赖于taotao-manager-dao、taotao-manager-interface等,这样如果将来taotao-manager-dao或taotao-manager-interface工程有所变动,那么需要先把它们打包到本地maven仓库才能正常启动taotao-manager-service,这样做比较麻烦。 
为什么我们选择启动聚合工程呢?这是因为它本身是个父工程,它知道它下面有哪几个模块,而且它可以将所有模块打包成war包运行。我们不用打包子模块,这样省事很多。 
那如何使用maven tomcat插件启动聚合工程呢?下面我就来教大家,希望大家认真看哦!

使用maven tomcat插件启动聚合工程

目前来说,服务层工程——taotao-manager-service中的web.xml文件内容是空的,所以我们应该修改一下,复制以下内容到web.xml文件中。

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
<display-name>taotao-manager</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>

然后在taotao-manager的pom.xml文件中添加tomcat插件依赖,如下图所示。 

注意:上文中我们使用maven tomcat插件启动web工程,端口号8080已经被占用了,所以在这里我将tomcat端口号置为8081,如此一来,就不会出现端口冲突问题了。 
为了便于大家复制,现把代码贴到这里,如下所示:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.taotao</groupId>
<artifactId>taotao-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<groupId>com.taotao</groupId>
<artifactId>taotao-manager</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging> <dependencies>
<dependency>
<groupId>com.taotao</groupId>
<artifactId>taotao-common</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
<modules>
<module>taotao-manager-pojo</module>
<module>taotao-manager-dao</module>
<module>taotao-manager-interface</module>
<module>taotao-manager-service</module>
</modules>
<!-- 配置tomcat插件 -->
<build>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<configuration>
<port>8081</port>
<path>/</path>
</configuration>
</plugin>
</plugins>
</build>
</project>
  • 1

紧接着在taotao-manager工程上右键,在菜单中把鼠标放到”Run As”上,会显示子菜单,在子菜单中点击”Maven build…”,如下图所示。 

最后,在下图的Goals一栏中输入clean tomcat7:run,然后点击【Apply】和【Run】。 

运行信息如下图所示,就说明启动成功了! 

启动成功之后,我们来看看我们本地的maven仓库,看看有没有打包聚合工程,如下图所示,发现并没有打包,这就说明我们启动聚合工程的话,用不着打包到本地maven仓库,这样肯定会提高效率。 

补充一点知识

这里补充一个常用操作,就是如果我们想删掉或修改我们配置的工程,该怎么操作呢?下面是操作步骤: 
【第一步】,在工程上右键,然后在菜单中把鼠标放到”Run As”上,会出现子菜单,我们点击子菜单中的”Run Configurations…”,如下图所示: 

【第二步】,在下图的”Maven Build”下方可以看到我们到这时为止一共配置的两个工程,如果我们想删掉taotao-manager工程,我们只需选中它然后点击上方的红色查号图标进行删除即可,也可以在右侧进行修改配置。 

 
0

(转)淘淘商城系列——使用maven tomcat插件启动聚合工程的更多相关文章

  1. (转)淘淘商城系列——使用maven tomcat插件启动web工程

    http://blog.csdn.net/yerenyuan_pku/article/details/72672138 上文我们一起学习了怎样搭建maven工程,这篇文章我就来教大家一起学习怎样用to ...

  2. 排除maven jar冲突 maven tomcat插件启动报错 filter转换异常

    最近在搞一个ssm+shiro的整合 用的maven tomcat插件 启动的时候报错,提示 maven org.springframework.web.filter.CharacterEncodin ...

  3. 购物商城学习--第三讲(tomcat插件启动web工程)

    此处提到的tomcat插件即maven工程集成的tomcat插件,可以在添加maven的tomcat插件之后,在本地通过脚本或者命令行方式运行web工程,tomcat插件启动只需要修改一个端口即可,非 ...

  4. myeclipse maven tomcat插件 创建web工程

    自从有了云笔记,很久不写博客了.今天写了使用Freemarker静态化JSP页面,索性就发出来.初学,勿喷. 这篇文字以前放在云笔记里,当然里面有很多借鉴网络上的东西,而自己也使用Maven很久了,索 ...

  5. (转)淘淘商城系列——使用maven构建工程时出现的错误

    http://blog.csdn.net/yerenyuan_pku/article/details/72690846 我觉得maven就他妈是一个傻逼,反正我是对它无语了.昨天刚刚使用maven构建 ...

  6. 某马-某淘商城的day01--->分析,工程搭建,tomcat插件启动工程,svn,反思

    -1:为什么还要写某马的某淘商城呢? 答:万物更新,季节交替.新人总把旧人换.所以呢,前人写了N多遍的东西,我们依旧在学,所以下决心写某马的某淘商城.(也因为在学校还没找工作,所以找个相对长期的事情做 ...

  7. 用Eclipse的tomcat插件启动tomcat时报错:

    用Eclipse的tomcat插件启动tomcat时报错: FATAL ERROR in native method: JDWP No transports initialized, jvmtiErr ...

  8. Idea中Smart Tomcat插件启动报NullPointerException问题

    如果你跟我一样用的是Idea Community社区版的话,也一定会遇到用Smart Tomcat插件启动报错的问题: 这个问题网上搜了一圈,大家好像也都遇到过了,不过也都没有找到原因和给出解决方案. ...

  9. (转)淘淘商城系列——使用maven构建工程

    http://blog.csdn.net/yerenyuan_pku/article/details/72669269 开发工具和环境 这里,我统一规范一下淘淘商城的开发工具和环境,如下: Eclip ...

随机推荐

  1. YTU 2887: D--机器人Bill

    2887: D--机器人Bill 时间限制: 1 Sec  内存限制: 128 MB 提交: 112  解决: 22 题目描述 最近,Dr. Jiang 新设计一个机器人Bill.Bill很聪明,会做 ...

  2. 【CJOJ】Contest4 - A+B Series

    Position:http://oj.changjun.com.cn/contest.php?cid=4 A经典题目 // <A.cpp> - Sun Oct 9 15:28:01 201 ...

  3. echo 到 stderr

    This question is old, but you could do this, which facilitates reading: >&2 echo "error& ...

  4. choice() 函数

    描述 choice() 方法返回一个列表,元组或字符串的随机项. 语法 以下是 choice() 方法的语法: import random random.choice( seq ) 注意:choice ...

  5. 使用jQuery的tab控件

    以前写winform程序的时候tab控件是非常容易使用的,写网页时确费了我不少劲,主要原因是jQuery的混乱. 有很多前端控件都提供tab,像bootstrap等,这里只说jQuery的. 下载相应 ...

  6. Gym 100531B Buffcraft (贪心+暴力+前缀和)

    题意:给定两个加血的方式,一个是直接加多少,另一种是加百分之几,然后你能够你选 k 种,问你选哪 k 种. 析:首先肯定要选加的多的,所以我们先排序,从大到小,然后用前缀和存储一下,再去枚举从第一种和 ...

  7. UVa 12716 && UVaLive 6657 GCD XOR (数论)

    题意:给定一个 n ,让你求有多少对整数 (a, b) 1 <= b <= a 且 gcd(a, b) = a ^ b. 析:设 c = a ^ b 那么 c 就是 a 的约数,那么根据异 ...

  8. Ubuntu 12.04的gnome classic panel添加程序快捷键(转载)

    How to add applets to the Gnome classic panel in Ubuntu 12.04 转自:http://www.borfast.com/blog/how-add ...

  9. 大水题(water)

    题目描述dzy 定义一个 $n^2$ 位的数的生成矩阵 $A$ 为一个大小为 $n \times n$ 且 Aij 为这个数的第 $i \times n+j-n$ 位的矩阵.现在 dzy 有一个数 $ ...

  10. [USACO 2012 Mar Silver] Landscaping【Edit Distance】

    传送门:http://www.usaco.org/index.php?page=viewproblem2&cpid=126 好题啊好题,一开始就输给了这道题的想法! 先把原始状态以及目标状态换 ...