springBoot打包成 war包并部署tomcat

本次以 springboot+maven 项目举例:

步骤1:  准备好tomcat容器 以及 jdk,为避免其他不必要问题,这里建议下载全新的tomcat.

本次搭配的是:  apache-tomcat-8.5.63  解压版  

                           jdk_1.8

框架:spring-boot 2.0.6

包管理工具:maven_3.3.9   

开发工具:idea

步骤2:pom  里面 3个步骤,一个class启动类的步骤,共4步:

    a:  打包方式war包格式,以下:

         <packaging>war</packaging>

  b: 忽略掉 springboot自带的tomcat:

<dependency>

            <groupId>org.springframework.boot</groupId>

            <artifactId>spring-boot-starter-web</artifactId>

          <exclusions>

                <exclusion>

                    <groupId>org.springframework.boot</groupId>

                    <artifactId>spring-boot-starter-tomcat</artifactId>

                </exclusion>

            </exclusions>

        </dependency>

c: 增加 servlet-api包:

<dependency>

            <groupId>javax.servlet</groupId>

            <artifactId>javax.servlet-api</artifactId>

            <version>3.1.0</version>

            <!-- provided表明该包只在编译和测试的时候用 -->

            <scope>provided</scope>

        </dependency>

注意  tomcat的版本 以及jdk的版本和增加的jar包搭配使用,如果配置不当,很可能会出现异常。

以上步骤完成之后:

         检查代码,比如  各个拦截器的配置,过滤器的配置,以及路径配置问题, 主要为防止 访问出现问题。

d: 设置主目录:

这个建议 新增加一个class类,平时调试用app启动类,打包就用此类

public class StartWeb extends SpringBootServletInitializer {

    @Override

    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {

        return builder.sources(StartApplication.class);

    }

}

注解:  StartWeb新建的类,继承  SpringBootServletInitializer 

重写  启动源: return builder.sources(StartApplication.class);

StartApplication   jar包启动的那个主类

步骤3,打包  并  运行

先 clean   然后 compile   再 package

然后就会生成 war包,把war包丢进   tomcat的webapps目录下,然后启动,即可。

访问路径参照  ip(本地)+(端口:tomcat server.xml配置的)+ /“war包名”/XX

本次在全打包过程中,出现过两个小问题:

    1-war包解压出错    2-tomcat启动但访问不了

在此: 建议:  1-使用全新的tomcat ,避免  使用旧的tomcat造成配置错误,引发不必要的排查

2- 代码中过滤器,拦截器,安全框架,属性配置文件检查,避免路径问题

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值