我有一个web项目,我很容易在tomcat上解码它 . 事实上,我有一个实现 WebApplicationInitializer
的 WebAppInitializer
类(这个类真的很胖),因为你知道每个支持servlet 3.0的应用服务器,它都可以轻松检测到它并尝试启动它 . 现在我想知道可以使用spring boot starter并且没有任何进一步的配置,我将 WebAppInitializer
传递给它并根据我的项目启动Spring引导?
我只想使用spring-boot的方法在Tomcat上部署应用程序,我不想使用其他spring-boot的工具 .
3 回答
http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-create-a-deployable-war-file精确地描述了如何做到这一点
来自Spring Boot docs:
所以,是的,它是可能的,但你需要将它转换为SpringBootServletInitializer,这似乎非常相似 .
是的,这是一个老问题 . 但我没有看到接受的答案,而最接近工作的答案只有一个外部资源的链接 . 所以这就是 .
https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-embedded-container-context-initializer
我试过了 . 有用
在我的用例中,我的项目包含几十个webapps,设计为在Tomcat上作为WAR运行 . 很多逻辑都巧妙地制作成了WebApplicationInitializers,似乎应该有一种更简单的方法来重用所有这些 . 将
implements ServletContextInitializer
添加到这些初始化程序并通过@Configuration
类将它们作为bean公开,使用SpringBoot的嵌入式Tomcat点亮了我的Web服务器 .