我使用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启动指令。我的问题是我没有使用任何与泽西相关的东西用于我的应用程序(apis),那么为什么它正在寻找与Jersey相关的代码,以及我如何解决它。
public class Application extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(Application.class);
}
}
控制器代码:
@RestController
@RequestMapping("/rest/cmscontent")
public class BatchController {
答案 0 :(得分:0)
如果您将spring-boot-starter-web
作为依赖项添加到POM文件中,
它将自动包含嵌入式Web容器(默认为Tomcat)
因此,只需直接执行JAR而不将其部署到任何Web容器。