我有一个使用 Spring boot 创建的 Web 应用程序,并且我正在使用 Spring Tool Suite(STS) 来开发它。如果我的理解是正确的,tomcat 内部嵌入在 STS 中,我可以在 Application.java 的帮助下从 STS 运行/调试应用程序。
现在我的疑问是,当我们通过运行 java 类作为“Spring Boot App”来运行应用程序时
- 部署可交付成果是什么?(ear/war)
- 可交付成果具体部署在哪里?我已经搜索过 在STS目录中到处都可以找到它
- 如果没有这样的事情,那么它是如何工作的?
这是有道理的还是我的理解有误?
最佳答案
您对 Spring Boot 的理解是错误的。
当您使用 Spring Boot 时,嵌入式 Tomcat 包含在您的应用程序中。
- Spring Boot 生成一个 .jar 文件。当应用程序启动时,Spring 知道如何为您引导 Tomcat 实例
- 如果您在 STS 上使用“运行”命令,则尚无可交付成果。
Application.java
上的 main 方法包含 Spring 运行应用程序所需的一切 - Spring Boot 是一个致力于创建独立 Spring 应用程序的项目。正如我在第一项中所说,Spring Boot 知道引导新 Tomcat 实例并运行应用程序所需的一切。使用 Spring Boot 时,您不需要应用程序服务器,Spring 通过嵌入 Tomcat/Jetty 或 Undertow 提供。 Tomcat 与您的代码一起位于您的应用程序内部,而不是外部应用程序服务器。
关于java - 是否有针对在 Spring Tool Suite(STS)中运行的 Web 应用程序的部署可交付成果(ear/war)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42976835/