springboot 默认是通常是打包成jar的,里面会内置一个tomcat容器

有时候我们需要使用以前打成war包的方式部署到对应的tomcat中,

具体springboot 怎么从jar改成war的打包方式我就不细说了,百度一大把

  • 基本就是pom加一个spring-boot-starter-tomcat 的dependency scope为provided
  • packaging由jar改为war
  • 增加一个类 继承 SpringBootServletInitializer 复写configure 返回application.sources(原先主函数那个类.class);
public class MyApplication extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(MyApplication.class);
} public static void main(String[] args) {

SpringApplication.run(MyApplication.class, args);

}

}

clean package -Dmaven.test.skip=true 打包后,放到tomcat6 7 8各种报错

很可能出问题的原因是springboot内置tomcat的版本和你实际部署到的tomcat不一致,放到正确的对应版本的tomcat下就解决了

查看springboot 内置tomcat版本的方法

参考 https://www.jb51.net/article/122547.htm

查看pom

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.6.RELEASE</version>
</parent>
  • 1
  • 2
  • 3
  • 4
  • 5

这块配置就是Spring Boot父级依赖,有了这个,当前的项目就是Spring Boot项目了,

spring-boot-starter-parent是一个特殊的starter,它用来提供相关的Maven默认依赖,

使用它之后,常用的包依赖可以省去version标签。关于Spring Boot提供了哪些jar包的依赖,

可查看C:\Users\用户.m2\repository\org\springframework\boot\spring-boot-dependencies\1.5.1.RELEASE\spring-boot-dependencies-1.5.1.RELEASE.pom

打开这个pom文件,搜索“tomcat.version” 会找到对应tomcat版本

ps:tomcat 8.0 和tomcat 8.5 还是有区别的 ,本来我一直用8.0.x的版本 ,但是现在springboot的内置版本却是8.5.x的 ,放到8.0是报错的,必须8.5才行……

ps2: war包部署到tomcat的项目访问要加上项目名

转: https://blog.csdn.net/opopopwqwqwq/article/details/82260658

springboot 的war包在Tomcat中启动失败的更多相关文章

  1. spring boot + jersey工程由jar包转为war包在tomcat中启动报错问题

    第一步: 在maven下,将Spring Boot工程由jar转换为war包启动,很简单,将pom.xml文件中的packaging改为war <packaging>war</pac ...

  2. Springboot解决war包放到Tomcat服务器上404的特殊情况

    Springboot解决war包放到Tomcat服务器上404的特殊情况 原文链接:https://www.cnblogs.com/blog5277/p/9330577.html 原文作者:博客园-- ...

  3. springboot打war包部署tomcat服务器,以及表单提交数据乱码处理

    小白觉得springboot打成jar包直接使用内嵌的tomcat或jetty容器(java -jar xxx.jar)运行项目不利于定位问题,我还是习惯于查看tomcat或nginx的日志来定位问题 ...

  4. shell 脚本解压war包+备份+tomcat自动关闭+启动

    公司的开发环境每次替换war包时候,老是需要重新上传并且手动解压,然后再去重启tomcat.觉得这样子太麻烦了,于是写了一个shell脚本,自动解压+备份+tomcat自动关闭+启动.代码如下: #关 ...

  5. 当 springboot 部署war包,tomcat报一堆无法解决的问题时

    直接打包 jar即可,这样就可以解决这些问题了.

  6. springboot打war包后部署到tomcat后访问返回404错误

    springboot打war包后部署到tomcat后访问返回404错误 1.正常情况下,修改打包方式为war <packaging>war</packaging> 2.启动类继 ...

  7. tomcat运行springboot项目war包

    以最简单的spring boot demo项目来演示如何发布项目war包到tomcat,并成功运行(有很多小伙伴会出现404错误) 一.准备一个最简单的demo项目 在IDEA中新建一个项目,一直ne ...

  8. springboot 学习之路 5(打成war包部署tomcat)

    目录:[持续更新.....] spring 部分常用注解 spring boot 学习之路1(简单入门) spring boot 学习之路2(注解介绍) spring boot 学习之路3( 集成my ...

  9. 踩坑--springboot打war包

    springboot需要jdk1.8+tomcat8.0 第一步:从IDEA中通过maven install将项目打成war包 第二步:将war包放在tomcat的webApp目录下,启动tomcat ...

随机推荐

  1. 91. Reverse Linked List 反转链表

    网址:https://leetcode.com/problems/reverse-linked-list/ 直接参考92:https://www.cnblogs.com/tornado549/p/10 ...

  2. html5(八) IndexedDB

    IndexedDB 是一个数据库系统,它在用户的计算机上存储索引信息. IndexedDB与传统的数据库不同.在IndexedDB中,数据库中的信息以对象的形式存储在对象库表中.对象库没有特定的结构, ...

  3. linux服务管理 服务启动和自启动

    服务启动和自启动 '服务启动' 就是在当前系统中让服务运行,并提供功能 '服务自启动' 自启动是指服务在系统开机或重启动之后,随着启动系统的启动而自动启动服务 服务自启动 [root@ssgao198 ...

  4. react源码探索

    react核心部分为 虚拟dom对象 虚拟dom差异化算法 单向数据流渲染 组件生命周期 事件处理 1) 虚拟dom对象: reactDOM.render(args,element); 这个方法第一个 ...

  5. Windows IIS服务挂载NAS共享文件存储

    本文介绍如何结合阿里云NAS的SMB协议支持和ECS Windows虚拟机,使用Windows内置的互联网信息服务(IIS)来提供Web和FTP服务. 阿里云文件存储服务NAS主要面向阿里云ECS 实 ...

  6. effective java——30使用enum

    1, 枚举太阳系八大行星 package com.enum30.www; public enum Planet {//枚举太阳系八大行星 MERCURY(3.302e+23,2.439e6), VEN ...

  7. Building tools 为什么是主流?

    一.building tools 为什么主流? Gradle 是目前比较流行的构建工具之一,Android Studio 中集成的就是 Gradle,并针对 Android 应用开发了插件 Gradl ...

  8. ios中模态弹窗用法及UINavigationController基本用法

    - (void)viewDidLoad { [super viewDidLoad]; //点击按钮跳转 loginViewController *vc=[[loginViewController al ...

  9. 入门项目 A5-3 interface-user 第三方接口3

    ''' 用户接口层 ''' # 导入数据库包下面的处理数据模,为了使用其内部名称空间 from db import db_handler # 注册接口函数,接收名字与密码两个参数 def regist ...

  10. linux下vim的安装及其设置细节

    第一步:使用apt安装vim sudo apt-get install vim 第二步:行号及其tab建设置 vim ~/.vimrc 添加如下文字 set nu //代码显示行号syntax on ...