spring boot 打war包在外部tomcat无法运行

1.处理spring boot项目打的war包在外部tomcat没办法运行起来并访问的问题

第一步:spring boot项目的启动类继承自SpringBootServletInitializer

因为在外部容器部署的话,就不能依赖于Application的main函数了,而是要以类似于web.xml文件配置的方式来启动spring应用上下文,因此需要在启动类继承SpringBootServletInitializer并实现configure方法,这个类的作用与在web.xml中配置负责初始化spring应用上下文的监听器作用类似。代码如下图:

c5a42e4e22adf720bf7406aa5c47731919e.jpg

第二步:修改pom文件,让spring boot内嵌的tomcat在运行时不起作用

有两种办法,任选一种:

<dependency>
    <!--声明spring boot内嵌tomcat的作用范围,在运行时不起作用-->
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
    <scope>provided</scope>
</dependency>

或者

<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>

最后启动外部的tomcat,在浏览器中访问时,需要添加项目名字,也就是war解压后文件夹的名字

 

 

 

转载于:https://my.oschina.net/wuyiyi/blog/1865280

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值