spring boot rest tomcat部署报错

标签 spring rest tomcat deployment spring-boot

我使用 Spring rest 和 Spring boot 创建了一个 rest api。当我尝试将它部署到 linux 服务器上的 tomcat 上时,出现以下错误:

rror during ServletContainerInitializer processing
javax.servlet.ServletException: Failed to instantiate WebApplicationInitializer class       at org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:160 
Caused by: java.lang.ClassNotFoundException: org.glassfish.jersey.server.ResourceConfig

我正在遵循 tomcat 的确切 Spring 引导说明。我的问题是,我没有为我的应用程序 (api) 使用与 Jersey 相关的任何内容,那么它为什么要寻找与 Jersey 相关的代码,以及如何修复它。

public class Application extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(Application.class);
    }

}

Controller 代码:

@RestController
@RequestMapping("/rest/cmscontent")
public class BatchController {

最佳答案

如果将 spring-boot-starter-web 作为依赖项添加到 POM 文件中,
它将自动包含嵌入式 Web 容器(默认为 Tomcat)。
因此,直接执行 JAR 即可,无需将其部署到任何 Web 容器。

关于spring boot rest tomcat部署报错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38153372/

相关文章:

java - 如何从 OAuth2 客户端应用程序中的授权服务器获取作为访问 token 响应一部分的附加信息

java - Spring MVC 枚举识别

java - 使用 RequestParam 上传文件

ios - 从 iOS 访问 O365 上的文件的正确方法是什么

java - 更改web app中的java类文件需要重新构建完整的项目并部署

java - th :disabled objects in Thymeleaf

database - 在 Web 服务中应该将信息原子化到什么级别?

java - Spring 安全 : Testing & understanding REST authentication

java - PHP/Java 桥 UnsupportedClassVersionError

java - Spring Boot中如何配置JNDI文件资源?