Maven多模块项目中使用maven-tomcat-plugin热部署
比如有一个父模块xfl(类型为pom的maven项目),其中的pom.xml为:
<modules>
<module>xfl-core</module>
<module>xfl-jugg</module>
<module>xfl-mysql</module>
</modules>

xfl-core和xfl-jugg都是jar类型的maven项目,xfl-mysql是war类型的maven项目。他们之间的依赖关系:xfl-core依赖xfl-jugg,xfl-mysql依赖xfl-core。
如果修改xfl-core或者xfl-jugg里面的java代码,通常需要重新部署。然而网上常见的是用jetty插件来避免重新部署,进而实现修改java代码都热部署。
本人使用jetty觉得不是很爽(有个小问题一直没解决:jetty:stop命令后,总是出现一个小错误)。
于是决定用maven-tomcat-plugin来试试,用了3天晚上(从22点到02点,白天要看孩子,%>_<%)终于实现了热部署功能。
只需在父项目xfl的pom加入:
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.0-beta-1</version>
<configuration>
<path>/xfl-mysql</path>
<!--这是关键要设置为true,默认设置是false,类比Tomcat里server.xml中的设置-->
<contextReloadable>true</contextReloadable>
</configuration>
</plugin>

对xfl用命令mvn tomcat7:run,一劳永逸。
这样再修改java代码,不需要重新部署,也不需要多次重新启动tomcat了。
***************************************************
maven集成tomcat进行web应用测试
maven集成tomcat进行web应用测试
1、环境介绍
maven:apache-maven-3.0.3
tomcat:apache-tomcat-6.0.32
jdk:jdk1.5.0_11
2、配置tomcat-maven-plugin
在pom.xml中加入如下配置
org.codehaus.mojo
tomcat-maven-plugin
1.1
tomcat-6.0.32
http://127.0.0.1:8080/manager
${encoding}
WebContent
说明:
tomcat-maven-plugin现在已拆分成tomcat7-maven-plugin和tomcat6-maven-plugin了,而groupId也由org.codehaus.mojo改为org.apache.tomcat.maven。详情可参考:http://tomcat.apache.org/maven-plugin-2/index.html
3、集成tomcat测试的方法
方法一(推荐):
运行mvn tomcat:run命令,启动内嵌的tomcat进行测试
1) 可在命令行直接运行mvn tomcat:run命令
2) 如果使用eclipse,可通过maven的eclipse插件m2e新增一个maven build运行tomcat:run命令,如图:
方法二:
运行mvn tomcat:redeploy命令,将web应用发布到外部已启动的tomcat进行测试
1) 在maven的文件里加入如下设置:
tomcat-6.0.32
tomcat
tomcat
2) 在tomcat/conf的tomcat-users.xml加入如下配置:
3) 启动tomcat
4) 类似方法一那样执行tomcat:redeploy命令
方法三(不推荐):
增加eclipse web工程支持,利用传统的eclipse集成tomcat测试的方法进行测试。此方法其实跟maven和tomcat-maven-plugin无关,发布到tomcat下测试的war包不一定跟maven构建的包一致,因此不推荐。
1) 在工程属性里的Project Facets里勾上Dynamic Web Module,如下图:
2) 这样便可以利用传统的eclipse集成tomcat测试的方法进行测试了,如下图:
更多关于tomcat-maven-plugin的使用,请参考:
http://mojo.codehaus.org/tomcat-maven-plugin/index.html
http://tomcat.apache.org/maven-plugin-2/index.html
**********************************************************
JAVA中 maven+tomcat+eclipse开发环境run as maven build 中的Goals tomcat:run启动一个外部的tomcat
因为条件的需要,内嵌的tomcat不能满足我的要求,请问tomcat:run带上什么样的参数,启动一个外部的指定的tomcat.
你可以试试修改tomcat的startup,bat文件 添加一行命令直接调用指定的tomcat
maven 打war包存放在哪里?
在你的代码目录里面
有个target文件夹

Maven多模块项目中应用maven-tomcat-plugin热部署相关推荐

  1. maven 多模块项目:单独构建某个模块

    前言 maven 3.5.0 在maven 多模块项目中,使用-pl -am -amd等参数可以单独构建某个模块. maven 多模块项目关系 单独构建模块:module1 在父级项目目录中执行如下命 ...

  2. 在 IntelliJ IDEA 中创建基本的 Maven 多模块项目

    在 IntelliJ IDEA 中创建基本的 Maven 多模块项目 笔者的环境: Maven 3.6.3 JDK 11 IntelliJ IDEA 2020.2.2 (Ultimate Editio ...

  3. maven多模块项目,多web合并项目使用心得

    Fixflow,做中国最好的开源流程引擎!项目地址https://github.com/fixteam/fixflow 此文章适合maven初学者或想接触maven的用户,讲的只是皮毛,高手请自觉略过 ...

  4. maven 多模块项目关系

    前言 maven 3.5.0 maven 多模块项目关系 maven 多模块项目关系有2种,分别为:继承关系和聚合关系. 继承关系 具有继承关系的多模块项目结构如下: my-project-inher ...

  5. springcloud 子项目怎么导入_「 从0到1学习微服务SpringCloud 」09 补充篇-maven父子模块项目...

    系列文章(更新ing): 作为微服务的项目,如果将每个项目都拆成一个完整的项目,很难开发,那得打开多少个idea.应该将它们归到一个项目里,使用maven父子模块项目的形式,如下图 之前我们项目的拆成 ...

  6. eclipse创建maven多模块项目(单个类似)

    2019独角兽企业重金招聘Python工程师标准>>> 1.下载安装maven 1.1.下载 注意:maven的版本,要根据你的jdk版本来下载.要不会安装失败,提示版本问题哦 Jd ...

  7. maven多模块项目部署到服务器,GitHub - baxias/foweb: 一个基于 Spring+SpringMVC+Mybatis 的Maven多模块项目。(实现前后端分离的服务器端)...

    Foweb Framework A multi-modules maven project base on Spring+SpringMVC+Mybatis. 一个基于 Spring+SpringMV ...

  8. maven 按业务拆分模块_关于maven单项目拆分为Maven多模块项目

    最近工作遇到Maven单项目拆分多模块项目问题,故简作记录 相关分支如下: Master(线上分支) Split(拆分分支) UnionDev(团队成员同步开发合并分支) Dev1(团队成员同步开发分 ...

  9. Maven多模块项目搭建

    要: Maven多模块项目搭建,可以通过合理的模块拆分,实现代码复用,便于维护管理,可以根据需要配置指定的模块. __kindeditor_temp_url__   http://git.oschin ...

最新文章

  1. Openfire 性能优化
  2. JAVA面向对象程序设计(第二版) 袁绍欣 第六章答案
  3. Spark学习之概念了解
  4. Android数据保存之SharedPreference
  5. C/C++与内存相关的函数
  6. LeetCode-424:替换后的最长重复字符
  7. Kubernetes 搭建 Kafka 和 Zookeeper 集群(完整教程)
  8. FloatingActionButton FAB 悬浮按钮
  9. 少儿编程python学啥-少儿编程学什么?少儿编程课程体系介绍
  10. 3DMAX的渲染后期丨怎么在PS里P出真实感的灯光?
  11. UITextView使用与YYlabel使用比较
  12. 用U盘安装ubuntu系统的具体步骤
  13. 【Codeforces 760 B Frodo and pillows】+ 二分
  14. Windows7系统怎么给文件夹加密?
  15. 论劳动生产力进步的原因,兼论劳动产品在不同阶级人民之间自然分配顺序(读后感)
  16. 用Python爬取拉钩网招聘职位信息
  17. TensorBoard引起的AttributeError: ‘Sequential‘ object has no attribute ‘run_eagerly‘问题
  18. Win32 OpenGL 编程(1)Win32下的OpenGL编程必须步骤
  19. 立此存照,万一哪天迈不过坎,回头看看
  20. 建立数据地图,让数据资产“活”起来

热门文章

  1. html json 访问工程,SpringBoot:Web项目中如何优雅的同时处理Json和Html请求的异常...
  2. list group by java_Java List集合实现MySQL Group By功能
  3. dft变换的两幅图_离散傅立叶变换DTFT、DFT和FFT在工程与数学结合的通俗理解
  4. 磁盘上没有足够的空间完成此操作_三年多啦,那么多IT人还没有搞定这个问题...
  5. jquery 添加 padding_【开发小技巧】11—如何使用JavaScript / jQuery为网站创夜间/高亮模式?...
  6. 数据库选型绕不开“CAP定理”是什么
  7. 自动化才能解放安全团队
  8. runtime 分类结构体_水性木器涂料的5大分类+4大配方事项
  9. java for stl_STL迭代器
  10. 信阳学院大一计算机考试题库,韩山师范学院大一计算机考试题库网页制作的试题...