一般情况spring-boot-starter-web是自带tomcat(即springboot内嵌tomcat),所以打包直接生成jar包,用java -jar命令就可以启动。但,有时我们希望用war格式的包,而不是jar格式的包。这就需要以下3步改造:
1.将项目的启动类Application.java继承SpringBootServletInitializer并重写configure方法。

@SpringBootApplication
public class ServletInitializer extends SpringBootServletInitializer {@Overrideprotected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {return builder.sources(ServletInitializer.class);}public static void main(String[] args) {SpringApplication.run(ServletInitializer.class, args);}
}

2.在pom.xml文件中,project下面增加package标签,修改packaging为war项目。

<packaging>war</packaging>

3.还是在pom.xml文件中,dependencies下面添加。

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId><scope>provided</scope>
</dependency>

注意:provided表示在编译和测试时使用(不加它,打的包中会指定tomcat,用tomcat部署时会因tomcat版本报错;而加上它,打包时不会把内置的tomcat打进去)

还要注意:spring-boot项目使用的jdk版本要和tomcat的jdk版本一致(都是1.8);tomcat的lib中el-api.jar版本最好要是javax.el-api-3.0.0.jar版本,防止低版本冲突。

只需要以上3步就可以打包成war包,并且部署到tomcat中了。需要注意的是这样部署的request url需要在端口后加上项目的名字才能正常访问。spring-boot更加强大的一点就是:即便项目是以上配置,依然可以用内嵌的tomcat来调试,启动命令和以前没变。

SpringBoot 项目war包部署 配置外置tomcat方法相关推荐

  1. 项目war包部署到第三方Tomcat,访问路径必须加上项目名称的坑

    部署到Tomcat 当我们打包好一个Springboot项目,如:message.war包,将war包粘贴到tomcat安装目录下的webapps目录之后(tomcat目录结构:https://mp. ...

  2. 阿里云SpringBoot项目war包部署

    在部署war包前先购买好云服务器,将MySQL.Nginx.Tomcat安装好,我会将安装部署手册上传,不用积分就能下载,有问题可以百度,毕竟独立解决困难对程序员也是十分重要的,废话不多说,开始部署: ...

  3. war项目连接linux数据库,springboot项目war包部署到Linux

    1.修改springboot启动类 2.移除springboot嵌入式tomcat 3.以上两步就可以了,如果还不行,就看tomcat日志catalina.log是否报错 1)jmx.mbean.dr ...

  4. springboot项目打war包发布到外置tomcat

    第一步:修改pom.xml 1. <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> ...

  5. weblogic部署springboot项目war包

    weblogic部署SpringBoot项目详细步骤 一.SpringBoot项目创建 二.修改启动类 三.新建web.xml和weblogic.xml 1.web.xml 2.weblogic.xm ...

  6. 将JavaWeb项目war包部署到阿里云服务器

    文章目录 JavaWeb项目部署到阿里云服务器 1. 把项目打包成war包 1.1 方法一 1.2 方法二 2. 配置服务器的jdk和tomcat环境 3. JavaWeb项目部署 JavaWeb项目 ...

  7. java 自写项目 war包 部署到linux上 本地可以正常运行,部署正常但访问404问题

    tomcat 成功开启 2.它的端口也没有和其它服务的端口冲突 3.确认访问路径,查看本机 host 中配置的信息也是正确的 4.项目在 idea 上运行的时候,默认是省略项目名的,所以地址栏为:「 ...

  8. war包访问php,nginx - JAVA 项目WAR包部署的适用场景?

    大家讲道理2017-06-17 09:19:111楼 实际经验: 我经手过的项目都是在weblogic上以目录的形式发布,目录结构: DOMAINS --域 └─domainA --域A └─apps ...

  9. idea 导出war包,IDEA导出Web项目war包并放入Tomcat运行起来

    ### 目录 ### * * * 1.打开Web项目的项目结构 * 2.找到构件然后添加一个新的构件 * 3.添加完成后如图所示,留意下输出目录 * 4.之后关闭项目结构选择构建-编译Artifact ...

最新文章

  1. 2022-2028年中国金属薄膜行业市场深度监测及投资潜力研究报告
  2. JAVA中的并发工具 -- CountDownLatch、CyclicBarrier、Semaphore
  3. python3网络编程
  4. python基础知识第四篇(元组)
  5. JavaScript-严格检查模式
  6. mysql新增范围之外数据_mysql第二天 数据的增删改查补充及外键
  7. 曝iPhone 12 Pro耗电异常,没开启任何应用电量也急剧下降
  8. 报Cannot find /usr/local/tomcat/bin/setclasspath.sh错误
  9. 增强型绿植植被指数_植被指数计算方法
  10. Linux Netfilter/NAT的两个典型问题
  11. 钉钉本地开发环境配置(H5微应用)
  12. java调adobe打印_Java报表工具打印方案集锦 | 改变自己
  13. 使用navicat进行mysql数据库拷贝
  14. 银行排队系统的设计与实现(源代码)
  15. 单纯形法剖析,一句话描述单纯形法
  16. 芯片史称:“长平之战”----Intel的东进与ARM的西征(3)--人生如戏,全靠演技
  17. 无法解析的外部符号 EVP_EncryptFinal_ex
  18. UltraEdit正则表达式使用(Regular Expressions in UltraEdit)
  19. FLASH web 预加载技术(原创)
  20. 无法为计算机分级评枯,计算机不能正常使用怎么办

热门文章

  1. 开启tomcat的apr模式,并利用redis做tomcat7的session的共享。
  2. 组件与组件之间的通信以及vue2.0中的变化、示例
  3. win10 uwp 通知列表
  4. HDU 2516 取石子游戏 斐波纳契博弈
  5. 奇怪吸引子---LuChen
  6. 社交平台舆情分析项目的总结和感想(LU学习,EM,KNN)(二)
  7. kafka0.9 java commit_0.9版本kafka优化及常见错误(转载)
  8. 小程序云函数获取用户昵称_小程序云开发云函数进阶
  9. caj在线阅读_用翻译软件快速阅读大量英文文献
  10. 过河问题matlab建模,matlab三对夫妻过河问题