如何在 Weblogic 12c 上部署 Spring 引导(非 Web)应用程序

How to deploy a Spring Boot (non-web) Application on Weblogic 12c

我正在尝试部署一个 Spring 引导应用程序,它不会在 Weblogic 12c 服务器中执行任何 servlet。通常主应用程序 class 会实现 WebApplicationInitializer 然后 Weblogic 会从那里获取它。当我不为我的应用程序执行此操作时,Weblogic 会很好地安装 war 文件,但随后什么也没有发生。

我的主应用程序 class 是否需要实现某种其他类型的接口才能让 Weblogic 启动它?

您无法部署未实现 Weblogic/Java EE 部署标准之一的工件。

根据the documentation,Weblogic 支持以下部署单元:

  • Web 应用程序

  • 企业JavaBean

  • 资源适配器

  • 网络服务

  • Java EE 库

  • 可选套餐

  • JDBC、JMS 和 WLDF 模块

  • 客户端应用存档

这意味着当且仅当它实现了上述标准之一时,您才可以部署工件。

Spring 启动应用程序没有实现这些。但是实现 WebApplicationInitializer 会使 Spring Boot 应用程序实现 Web 应用程序标准,以便它可以部署到 Servlet 容器或任何其他支持 Servlet 标准的服务器。

如果您不想将应用程序部署为 Web 应用程序,则必须手动实施所列标准之一。