我是Spring MVC的新手,我现在已经开始讨论如何将您的Web项目部署为.jar。我的IDE是Spring Tool Suite。我一直使用.war + Apache Tomcat。
有人可以从实际角度详细说明为什么要使用.jar而不是.war?有什么问题要注意吗?
编辑:欢迎其他答案
答案 0 :(得分:2)
Spring Boot使用胖JAR打包,其中将带有所有依赖项的Servlet容器嵌入到这个单个JAR中。
如果您使用的是Maven,它会使用spring-boot-maven-plugin
来打包项目。
这种方法的实际用法很简单。能够从具有外部化属性的命令行轻松运行基于Srvlet的Spring应用程序。这种配置实现了强大的编排可能性,这种可能性通常在现代企业中用于所谓的微服务或SOA架构中。
有一群人(包括我自己)认为将不相关应用程序的各种WAR文件部署到单个Servlet运行时并不是一个好主意。
因此,每个应用程序部署时,胖JAR对于单独的Servlet运行时非常方便。
答案 1 :(得分:2)
关于在同一台机器上安装.jar和Tomcat + .war,我可以使用它。这可能并不酷,但我在春季启动升级之前在tomcat服务器上运行了一个.war应用程序。现在我的新应用程序是Spring启动应用程序,我们正在将我们的架构迁移到SOA概念,但我们无法通过移动汽车改变轮胎。主应用程序,WAR在tomcat服务器上运行,其他(.jar)是自包含的(嵌入式tomcat),每个都运行在不同的端口。这是目前最可行的解决方案。