第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

SpringBoot打包為war包,并在tomcat中運(yùn)行

標(biāo)簽:
Spring

先看一下我创建的最简单的项目吧。

controller类

@RestController
public class TestController {
    @RequestMapping("index")
    public String index() {
        return "hello";
    }
}

pom文件没有做任何修改,我们直接启动这个项目,注意看启动的日志中有关嵌入式tomcat的版本的
file

我这里的版本是8.5.37,这个是由你选用的springboot的版本定的,我选用的springboot是2.0.8版本的。好了,我们就直接访问项目了,访问成功

file

好了,我们刚才是直接在idea中启动了这个类,当然就可以打包成jar包启动了,就不演示了,直接开始打包为war包

1. 修改pom文件,因为springboot使用的内嵌式的tomcat,所以我们做如下操作

<!-- 将打包方式改为war包-->
    <packaging>war</packaging> 

<!--排除骨嵌式tomcat,修改第一个依赖-->
		<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>
		
		<!-- 我们移除了嵌入式的tomcat,就要添加对应的tomcat依赖包 -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.1.0</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
        </dependency>

好了,pom.xml算是改完了,这时候,我们在idea中直接启动SpringBootApplication.java时会报以下错误
file

2.新建一个启动类,tomcat是找不到springboot的启动类的,我们要新建一个类指向它,这个类要继承SpringBootServletInitializer类,并重写 configure 方法

在我们springboot启动类的同一个下创建一个类

/**
 * 修改启动类,继承 SpringBootServletInitializer 并重写 configure 方法
 */
public class SpringBootStartApplication extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        // 注意这里要指向原先用main方法执行的Application启动类
      return builder.sources(SpringbootWardemoApplication.class);
    }
}

通过以上两步,已经完成了由jar包转为war的过程。

因为打包方式为war包,所有启动这个类也就报错了,同样,也不能打包为jar包了。那么我们就在idea中配置tomcat启动方式,tomcat的版本要和之前这个嵌入式的一样(理论上只要大版本上相同就好了,同为tomcat8.5)。更多的tomcat版本下载,见tomcat各个版本下载
在idea配置tomcat启动时可能有个小插曲,就是找不到对应的war包,你可以先使用maven打包一次,或者点击下这里
file

我们在idea中用tomcat方式启动后,没有问题了。

file

最后,我们用maven打包,然后放在我们的tomcat中启动就可以了

  • 注意以下几点 :

    1.之前在springboot中一些配置不生效,最明显的就是对端口的配置

    2.如何修改之前的springboot项目的版本,只要在pom.xml中最开始的地方修改就可以了

    <parent>
    	<groupId>org.springframework.boot</groupId>
    	<artifactId>spring-boot-starter-parent</artifactId>
    	<version>2.0.8.RELEASE</version>
    	<relativePath/> <!-- lookup parent from repository -->
    </parent>
    

    3.如何查看自己sprinboot中对应的嵌入式的tomcat的版本

點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消