tomcat-embed-core:10.1.0-M16 会使 import javax.servlet.http.HttpServletResponse 无法解析

Ric*_* V. 5 tomcat gradle spring-boot

如果我放入最新的 org.apache.tomcat.embed:tomcat-embed-core:10.1.0-M16 依赖项,则会导致 import javax.servlet.http.HttpServletResponse 无法解析。

这是我的 build.gradle,

plugins {
    id 'org.springframework.boot' version '2.7.0'
    id 'io.spring.dependency-management' version '1.0.11.RELEASE'
    id 'java'
    id 'war'
}
dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-web'
    implementation 'org.apache.tomcat.embed:tomcat-embed-core:10.1.0-M16'
}
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题?

谢谢你!

Ser*_*nin 8

tomcat-embed-core:9.0.63Spring Boot 提供的还包含javax.servlet-api库中重新打包的类,但由于从 迁移javax.servletjakarta.servlet. 您可以手动添加此依赖项来修复编译错误:

compileOnly 'javax.servlet:javax.servlet-api:4.0.1'
Run Code Online (Sandbox Code Playgroud)

然而,仅靠这一点并不能解决问题,因为 Spring Boot 2.7 由于从javax.servletJakarta API 迁移而在内部与 Tomcat 10.1 不兼容。如果您想尝试使用 Spring Boot 的 Tomcat 10.1,您很可能必须等到 Spring Boot 3 发布。请参阅Spring Boot 博客中的更多信息。


归档时间:

查看次数:

2468 次

最近记录:

3 年,2 月 前