如何把spring boot项目部署到tomcat容器中

 更新时间:2017年04月01日 14:19:15   作者:Hgihness  
本文给大家分享如何把spring boot项目部署到tomcat容器中,本文给大家介绍的非常详细,需要的朋友参考下

把spring-boot项目按照平常的web项目一样发布到tomcat容器下

一、修改打包形式

在pom.xml里设置 <packaging>war</packaging>

二、移除嵌入式tomcat插件

在pom.xml里找到spring-boot-starter-web依赖节点,在其中添加如下代码,

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-web</artifactId>
  <!-- 移除嵌入式tomcat插件 -->
  <exclusions>
    <exclusion>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-tomcat</artifactId>
    </exclusion>
  </exclusions>
</dependency>

三、添加servlet-api的依赖

下面两种方式都可以,任选其一

<dependency>
  <groupId>javax.servlet</groupId>
  <artifactId>javax.servlet-api</artifactId>
  <version>3.1.0</version>
  <scope>provided</scope>
</dependency>
<dependency>
  <groupId>org.apache.tomcat</groupId>
  <artifactId>tomcat-servlet-api</artifactId>
  <version>8.0.36</version>
  <scope>provided</scope>
</dependency>

四、修改启动类,并重写初始化方法

我们平常用main方法启动的方式,都有一个App的启动类,代码如下:

@SpringBootApplication
public class Application {
  public static void main(String[] args) {
    SpringApplication.run(Application.class, args);
  }
}

我们需要类似于web.xml的配置方式来启动spring上下文了,在Application类的同级添加一个SpringBootStartApplication类,其代码如下:

/**
 * 修改启动类,继承 SpringBootServletInitializer 并重写 configure 方法
 */
public class SpringBootStartApplication extends SpringBootServletInitializer {
  @Override
  protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
    // 注意这里要指向原先用main方法执行的Application启动类
    return builder.sources(Application.class);
  }
}

五、打包部署

在项目根目录下(即包含pom.xml的目录),在命令行里输入:

mvn clean package即可, 等待打包完成,出现[INFO] BUILD SUCCESS即为打包成功。

然后把target目录下的war包放到tomcat的webapps目录下,启动tomcat,即可自动解压部署。

最后在浏览器中输入

http://localhost:[端口号]/[打包项目名]/

发布成功

以上所述是小编给大家介绍的如何把spring boot项目部署到tomcat容器中,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • Java实现斗地主的发牌功能

    Java实现斗地主的发牌功能

    这篇文章主要为大家详细介绍了Java实现斗地主的发牌功能,含按顺序发牌和玩家牌排序显示等功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-06-06
  • Java8 Stream流的常用方法汇总

    Java8 Stream流的常用方法汇总

    Java8 API添加了一个新的抽象称为流Stream,可以让你以一种声明的方式处理数据,下面这篇文章主要给大家介绍了关于Java8 Stream流的常用方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-07-07
  • java实现文本框和文本区的输入输出

    java实现文本框和文本区的输入输出

    这篇文章主要介绍了java实现文本框和文本区的输入输出的方法和具体示例,有需要的小伙伴可以参考下。
    2015-06-06
  • java获取服务器基本信息的方法

    java获取服务器基本信息的方法

    这篇文章主要介绍了java获取服务器基本信息的方法,涉及java获取系统CPU、内存及操作系统等相关信息的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • Spring中使用JSR303请求约束判空的实现

    Spring中使用JSR303请求约束判空的实现

    这篇文章主要介绍了Spring中使用JSR303请求约束判空的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • Java8的DateTimeFormatter与SimpleDateFormat的区别详解

    Java8的DateTimeFormatter与SimpleDateFormat的区别详解

    这篇文章主要介绍了Java8的DateTimeFormatter与SimpleDateFormat的区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • Java实现员工信息管理系统

    Java实现员工信息管理系统

    这篇文章主要为大家详细介绍了Java实现员工信息管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • SpringBoot2使用Jetty容器操作(替换默认Tomcat)

    SpringBoot2使用Jetty容器操作(替换默认Tomcat)

    这篇文章主要介绍了SpringBoot2使用Jetty容器操作(替换默认Tomcat),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • 解决idea中Terminal终端无法执行GIT命令+Terminal 中文乱码问题

    解决idea中Terminal终端无法执行GIT命令+Terminal 中文乱码问题

    这篇文章主要介绍了解决idea中Terminal终端无法执行GIT命令+Terminal 中文乱码问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • IDEA+Maven创建Spring项目的实现步骤

    IDEA+Maven创建Spring项目的实现步骤

    这篇文章主要介绍了IDEA+Maven创建Spring项目的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07

最新评论