Keycloak 服务器作为 Eureka 客户端

Posted

技术标签:

【中文标题】Keycloak 服务器作为 Eureka 客户端【英文标题】:Keycloak server as Eureka client 【发布时间】:2021-04-17 06:48:48 【问题描述】:

我想让我的 工作。似乎服务器启动时没有找到以下方法:

javax.ws.rs.core.Application.getProperties()Ljava/util/Map;

该方法的类 javax.ws.rs.core.Application 可从以下位置获得:

 jar:file:/home/vagrant/.m2/repository/javax/ws/rs/jsr311-api/1.1.1/jsr311-api-1.1.1.jar!/javax/ws/rs/core/Application.class
 jar:file:/home/vagrant/.m2/repository/org/jboss/spec/javax/ws/rs/jboss-jaxrs-api_2.1_spec/2.0.1.Final/jboss-jaxrs-api_2.1_spec-2.0.1.Final.jar!/javax/ws/rs/core/Application.class

它是从以下位置加载的:

file:/home/vagrant/.m2/repository/javax/ws/rs/jsr311-api/1.1.1/jsr311-api-1.1.1.jar

你对这种行为有什么想法吗?

【问题讨论】:

【参考方案1】:

尝试排除 jsr311-api 并包含 spring-boot-starter-jersey。 15.0.2

对我来说很好用
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        <version>3.0.3</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>
        <version>2.5.4</version>
    </dependency>

【讨论】:

谢谢!它对我也很好 不客气 :) 我确信这会有所帮助,因为我花时间在上面 :-$ 不要忘记标记为已解决 ;) 我想你会用这个github.com/thomasdarimont/embedded-spring-boot-keycloak-server 吗?您使用的是哪个版本?

以上是关于Keycloak 服务器作为 Eureka 客户端的主要内容,如果未能解决你的问题,请参考以下文章

apache shiro:在 shiro.ini 中添加啥以使用 JWT 和 keycloak 作为授权服务器进行客户端身份验证

使用 Keycloak 作为 Azure AD 的身份代理授予客户端凭据

Eureka 客户端源码分析

Spring Cloud 入门Eureka -Consumer服务消费

Netflix Eureka

简单了解Eureka