Java 应用程序上的 Eureka Server 没有 Spring

Eureka Server on Java application without Spring

我有 java 应用程序(没有 Spring 或 Spring 引导),其中服务器通过调用此方法启动:

 public void startServer() {
        com.sun.net.httpserver.HttpServer server = JdkHttpServerFactory.createHttpServer(address, resourceConfig, false);
        logger.info("HTTP: Start Http-Server. Adress: %s", address);
        server.start();
    }

我希望此应用程序充当 Eureka ServerEureka Clients 将是 Spring 项服务,因此我可以配置它们。

我看过很多关于如何使用 Spring 应用程序设置 Eureka Server 的教程,但我不知道如何使用非 Spring 应用程序来实现它?

我是否必须手动将以下端点添加到 Eureka 服务器? https://github.com/Netflix/eureka/wiki/Eureka-REST-operations

Eureka 服务器在 Web 应用程序中作为 Jersey REST 端点实现。它可以作为 WAR 部署在任何 servlet 容器上:Tomcat、JBoss、Jetty 等

您可以从 https://github.com/Netflix/eureka/eureka-server 处的代码构建 WAR。

但是您正在使用的 Java HTTP 服务器不支持 servlet API,因此您不能只向其添加 WAR。

  • 选项 1:运行 它作为独立进程上的独立进程 Tomcat/Jetty/...
  • 选项 2:在主 class 中添加嵌入式 Tomcat 或 Jetty(就像 Spring Boot 那样)。
  • 选项 3:尝试找出如何在 HTTP 服务器中映射 Jersey REST 端点?