原文地址:https://www.cnblogs.com/mozisss/p/10233366.html

功能:

(使用maven中的tomcat插件,就可以将tomcat集成到项目中,效果就是:在不同平台中无需配置tomcat就可以直接运行web)

地址:

tomcat官网maven插件:http://tomcat.apache.org/maven-plugin.html

使用方法:

(1)在maven项目的pom.xml中添加插件依赖:

 <pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<path>/mozi</path>
<port>8080</port>
<uriEncoding>UTF-8</uriEncoding>
</configuration>
</plugin>
</plugins>
</pluginManagement>
 (解释:

      path: 当前web项目的url访问入口,即http://localhost:8080/mozi/ ; 若设置为<path>/</path> 则访问url为:http://localhost:8080/

      port:访问的端口号

     uriEncoding: uri的访问编码)

  (2)等待插件加载完后,在就可以使用maven命令运行tomcat7了,这里用的是idea:

(maven命令:mvn tomcat7:run )

(3)启动结果:

(4)测试: 在浏览器中输入http://localhost:8080/mozi , 将访问到项目mozi的index.jsp

tomcat7-maven-plugin的其他命令:

tomcat7:run         --启动嵌入式tomcat ,并运行当前项目
tomcat7:deploy --部署一个web war包
tomcat7:reload --重新加载web war包
tomcat7:start --启动tomcat
tomcat7:stop --停止tomcat
tomcat7:undeploy --停止一个war包

遇到过的坑:

(1)启动tomcat7时异常:java.lang.ClassNotFoundException: org.apache.catalina.deploy.ServletDef

在pom.xml文件中,添加tomcat7-maven-plugin后不要添加tomcat7的其他依赖,如果有就去掉。如下面是tomcat7的包依赖,即<dependency>和<plugin>选其一:

<dependency>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
</dependency>

(否则,在启动时tomcat会在tomcat/lib 下加载包,但在嵌入式tomcat目录中没有lib)

(2)启动时:java.lang.NoSuchMethodException: org.apache.catalina.deploy.WebXml addFilter

在项目目录下 target/tomcat/conf/context.xml 添加:

<Context> <Loader delegate="true" /></Context>

(关于tomcat的delegate机制,,,)

注:由于配置的环境、依赖包版本的不同,以上介绍的方法可能有所不同)

Maven使用tomcat7-maven-plugin的更多相关文章

  1. maven采用tomcat7启动项目

    1.maven 集成tomcat7启动项目 <plugin> <groupId>org.apache.tomcat.maven</groupId> <arti ...

  2. IDEA maven使用tomcat7插件启动报错:A child container failed during start

    使用maven的tomcat7插件启动项目时出现上面的错误:A child container failed during start, 出现这个问题的原因是导入了servlet-api包,与tomc ...

  3. maven中tomcat7:run无法启动maven项目

    这几天在学习ssm相关整合,在使用maven时,发现了一些问题,就是明明按代码都差不多就是没法运行 这个是maven主项目的pom.xml的配置,我解决的方法是添加 <maven.compile ...

  4. 从初识Maven到使用Maven进行依赖管理和项目构建

    前些天就安装了Maven,以备自己以后整合项目用,尤其是我们的ssh,ssm项目.想必好多人在开始的时候并不清楚Maven是什么,它能够帮助我们干什么. 所以在学习Maven之前我们一定要知道它是什么 ...

  5. Maven基础:Maven环境搭建及基本使用(1)

    1. Maven环境搭建 1.1 Maven简介 1.2 Maven下载及环境设置 Maven下载地址:http://maven.apache.org/download.cgi 当前下载版本:apac ...

  6. 国内阿里maven仓库镜像maven配置文件maven仓库速度快

    国内连接maven官方的仓库更新依赖库,网速一般很慢,收集一些国内快速的maven仓库镜像以备用. 最新更新:2016年11月11日 18:05:40 阿里云提供Maven私服,我把配置文件贴一下,自 ...

  7. Maven 入门——认识 Maven

    Maven /ˈmāvən/ ,可以翻译成"专家",是一款来自 Apache 组织的开源项目,用于项目管理.主要服务于基于 Java 平台的项目构建.依赖管理和项目信息管理. 构建 ...

  8. Maven实战——常用Maven插件介绍

    maven nexus 库已上传了第三方jar,但就是用mvn compile下不到本地 回答于 2013-06-04 14:40 你是通过何种方式上传到nexus的? 有给pom文件吗? 如果是单纯 ...

  9. 搭建 maven 项目 搭建 maven web 项目及遇到 JDK 的问题

    临时起意搭建一个 maven web 项目.使用的servlet 3.0 及 1.8 JDK. maven 默认创建了一个JDK 1.5 版本的项目. 注意此处选择一下WAR包.不然在配置中配置的话会 ...

  10. Maven入门:Maven的基本概念

    本文转自:http://www.tianmaying.com/tutorial/maven-basic 看这篇文章之前,你应该先Run起来一个简单的Maven项目,先有个感性认识,然后再来听听对这些基 ...

随机推荐

  1. layui的使用说明

    一.定义 layui,是一款采用自身模块规范编写的前端 UI 框架,遵循原生 HTML/CSS/JS 的书写与组织形式,跟其他UI框架比较(比如bootstrap.easyui.findui.topu ...

  2. Git 版本及版本范围表示法

    很多 Git 命令都使用 revision(修订版本)作为参数.根据不同的命令,有时候 revision 参 数代表一个特定的提交,有时候代表某一个提交可以追踪到的所有的父提交(比如 git log) ...

  3. Java代码中可以优化性能的小细节

    避免对boolean类型的判定 反例: 12 if("a".equles("a")==true)`{} 正例: 12 if(Objects.equles(&qu ...

  4. VMware 12 下载+专业版永久序列号

    VMware 12 下载     VMware 12 下载(百度网盘) 链接:https://pan.baidu.com/s/1VvRmjf1yZ2zprQUzuVKRkA 密码:dvpr VMwar ...

  5. Linux从入门到精通总结(非原创)

    文章大纲 一.课程内容总结二.课程学习地址三.学习资料下载四.参考文章 一.课程内容总结   二.课程学习地址 第一天:https://www.cnblogs.com/WUXIAOCHANG/p/10 ...

  6. MySQL——基本概念

    1.数据库:是一个长期存储在计算机内的.有组织的.有共享的.统一管理的数据集合.它是一个按数据结构来存储的和管理数据的计算机软件系统,即数据库包含两层含义:保管数据的“仓库”,以及数据管理的方法和技术 ...

  7. Python从零开始——基本数据类型

  8. Linux shell awk数组使用

    awk中使用数组 一.数组格式 数组是一个包含一系列元素的表. 格式如下:     abc[1]="xiaohong"     abc[2]="xiaolan" ...

  9. 《linux就该这么学》课堂笔记19 iSCSI、MariaDB、无人值守安装

    1.iSCSI技术介绍 硬盘是计算机硬件设备中重要的组成部分之一,硬盘存储设备读写速度的快慢也会对服务器的整体性能造成影响. 为了进一步提升硬盘存储设备的读写速度和性能,人们一直在努力改进物理硬盘设备 ...

  10. iview admin动态路由实现

    参考 https://blog.csdn.net/weixin_41538490/article/details/93749942