我尝试基于maven依赖项使用Tomcat10:
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat</artifactId>
<version>10.0.20</version>
<type>pom</type>
</dependency>问题是,在最后有部署的jar文件;只有war文件。是否有任何解决方案/插件/配置可以让tomcat10将服务器部署为jar文件?
发布于 2022-04-25 21:08:51
也许您误解了雅加达Servlet技术(以前是Java )。
Servlet的主要目标之一是将您从与任何特定供应商的绑定中解放出来。因此,您可以根据Jakarta Servlet API编写Servlet。稍后,您将servlet作为WAR文件部署到来自任何供应商的任何Servlet容器中。您的目标部署服务器供应商在编译时应该是不相关的。
因此,您的项目应该将Servlet作为一个依赖项,而不是专门包含Tomcat。您将该依赖项配置为仅在编码时使用,而不是用于最终产品中。在部署时,特定的Servlet容器将提供自己的Servlet副本,以及它自己实现的那个API。
对于部署到Tomcat 10.0.x,您的项目的依赖应该是雅加达Servlet 5.0。请参阅Tomcat文档站点的https://tomcat.apache.org/whichversion.html页面。
有些人使用另一种部署策略。这些人选择将一个特定的Servlet容器与他们的web应用程序一起嵌入,打包为瓦罐而不是战争。然后,部署作为服务单独完成,而不是像上面描述的那样插入到现有的Servlet容器中。
如果您的目标是执行第二个部署策略,那么我强烈建议使用针对此目的的框架,而不是自己的打包。https://en.wikipedia.org/wiki/Spring_Framework#Spring_Boot是最流行的此类框架之一。
https://stackoverflow.com/questions/72000010
复制相似问题