更改SpringBoot2.4.4上的默认web服务器

jtw3ybtb  于 2021-07-13  发布在  Java
关注(0)|答案(2)|浏览(260)

我正在使用springboot2.4.4,我会将默认的web服务器tomcat改为undertow或jhetty,但是我发现同时使用gradle或maven非常困难。
一个旧的文档公开了如何做到这一点,但我确信所有这些都已更改,因为现在核心库中嵌入了tomcat、undertow和jetty配置:
https://docs.spring.io/spring-boot/docs/2.1.9.release/reference/html/howto-embedded-web-servers.html
在2.4.4版本中是如何实现的?

ncecgwcz

ncecgwcz1#

版本之间没有变化。这在3.1中的SpringBoot2.4.4参考指南中有很好的描述。使用其他web服务器部分。基本上,改变包括两个步骤:
从中排除嵌入的tomcat服务器依赖项 spring-boot-starter-web 人工制品:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    <exclusions>
        <!-- Exclude the Tomcat dependency -->
        <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
        </exclusion>
    </exclusions>
</dependency>

而是将嵌入式服务器作为单独的依赖项包含:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-jetty</artifactId>
</dependency>

只是别忘了在同一节中注意到参考指南中的以下引用,这些引用可能与您相关,也可能与您无关:
ServletAPI的版本已经被重写,因为与Tomcat9和Undertow2.0不同,Jetty9.4不支持Servlet4.0。

ih99xse1

ih99xse12#

按照以下三个步骤更改默认的web服务器:更改pom.xml中的配置。
1.排除默认web服务器。
2.包括必要的web服务器。
3.maven更新。
例如,
而不是这个

<dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>

加上这个

<dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-jetty</artifactId>
</dependency>

对于所需的服务器,请添加相应的web服务器依赖项。

相关问题