如何将WAR项目注册到Netflix的Eureka Server?

问题描述 投票:0回答:1

我有 2 个使用 Jakarta EE 11 制作的独立 WAR 项目,在 Wildfly 的 8080 和 8081 上运行。 然后我在 Tomcat 的 8761 上运行 Netflix 的 Eureka-Server(Spring Boot 项目)。 我如何注册这些在 Eureka 上运行的 Wildfly 项目。

在 Spring 中很简单,我们只需要在要注册到 Eureka-Server 的项目中添加

spring-cloud-starter-netflix-eureka-client
starter,然后在主类中添加
@EnableDiscoveryClient
注解,并在 application.yml 中添加以下内容

eureka:
  client:
    service-url:
      defaultZone: http://localhost:8761/eureka/

但是当客户端项目不是 Spring Boot JAR 类型,这里是 WAR 类型时,如何做到这一点。

尝试寻找教程但找不到任何教程,所有教程都演示了如何在 Spring Boot 中做到这一点。

这可能吗?

jakarta-ee netflix-eureka
1个回答
3
投票

首先,无论是jar

还是
war,Spring的
Eureka Client
Jakarta EE应用程序都不可能集成。

如果一些代码也可以使用 hacky,那么我不会建议这样做,因为从长远来看它很难维护。

我猜您有一个使用

JAX-RS/Jersey
开发的
Jakarta EE
应用程序。

如果我假设您有一个使用

JAX-RS/Jersey
开发的
Jakarta EE
应用程序,则可以通过 Spring Boot Jersey Library
 使用 
JAX-RS/Jersey
 重写相同的 
Spring 应用程序。这将使您的生活更轻松。

您可以使用

spring-boot-starter-jersey
开发基于Spring的
JAX-RS/Jersey
独立应用程序
(支持
jar
/
war
类型)并将
spring-cloud-starter-netflix-eureka-client
与该应用程序一起使用。

网上有很多带有

spring-boot-starter-jersey
的示例和教程。

看看这是否有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.