【问题标题】:Eureka and Jersey 2.x尤里卡和泽西 2.x
【发布时间】:2018-10-28 06:31:54
【问题描述】:

我正在使用 Spring Boot 并寻找发现服务器。我看到“spring-cloud-starter-netflix-eureka-server”依赖于 Jersey 1.x,这不是在我的环境中使用的选项。有几个线程谈论添加与 Jersey 2.x 的兼容性,还有一些线程谈论一起删除 Jersey。

但是,我没有看到与这些选项中的任何一个以及如何使用它们相关的文档/代码的任何链接。有人可以指出我在这里的选择吗?

以下是到目前为止我能够收集到的链接:
https://github.com/Netflix/eureka/issues/600
https://github.com/Netflix/eureka/tree/contrib/jersey2-compatibility/eureka-core-jersey2

【问题讨论】:

    标签: spring spring-boot netflix-eureka


    【解决方案1】:

    以下依赖项对我有用。看我的pom

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.3.RELEASE</version>
    </parent>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        <version>2.0.0.RELEASE</version>
        <exclusions>
            <exclusion>
              <groupId>javax.ws.rs</groupId>
              <artifactId>jsr311-api</artifactId>
           </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-jersey</artifactId>
    </dependency>
    

    【讨论】:

      【解决方案2】:

      Spring Boot Jersey starter 引入了 Jersey 2.x,而 Spring Cloud Eureka starter 引入了 eureka 客户端依赖项,其中包括 Jersey 1.x。

      在 eureka 客户端升级到使用 Jersey 2.x 之前,基本上 Spring Boot Jersey 启动器和 Spring Cloud Eureka 启动器不会一起使用。

      您很可能会收到 java.lang.NoSuchMethodError: javax.ws.rs.core.Application.getProperties()Ljava/util/Map; 之类的错误

      您的选择是:

      【讨论】:

      • 感谢您的回复。不幸的是,我们被允许在其上运行应用程序的应用程序容器不支持 Jersey 1.x。所以选项 2 被排除在外,我们也没有使用 JAX-RS/Jersey 规范/实现。我一直在为发现服务器寻找开箱即用的解决方案,但根据您的 cmets,构建一个是唯一的选择吗?
      • 看看Spring Cloud Consul - cloud.spring.io/spring-cloud-consul。可用于服务发现和分布式配置
      猜你喜欢
      • 2016-08-02
      • 2017-03-26
      • 1970-01-01
      • 1970-01-01
      • 2013-11-26
      • 1970-01-01
      • 1970-01-01
      • 2018-04-15
      • 2017-09-23
      相关资源
      最近更新 更多