ClassNotFoundException:org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder

ClassNotFoundException: org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder

尝试使用以下代码创建密钥斗篷对象以使用密钥斗篷注册新用户:

 Keycloak keycloak = KeycloakBuilder.builder()
                            .serverUrl(serverUrl)
                            .realm(realm)
                            .grantType(OAuth2Constants.PASSWORD)
                            .clientId(clientId)
                            .clientSecret(clientSecret)
                            .username("someone")
                            .password("someword")
                            .build();

但是出现以下错误:

Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: org/jboss/resteasy/client/jaxrs/ResteasyClientBuilder] with root cause

java.lang.ClassNotFoundException: org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder at java.net.URLClassLoader.findClass(URLClassLoader.java:381) ~[na:1.8.0_131] at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[na:1.8.0_131] at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335) ~[na:1.8.0_131] at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[na:1.8.0_131] at org.keycloak.admin.client.Keycloak.(Keycloak.java:58) ~[keycloak-admin-client-4.3.0.Final.jar:4.3.0.Final] at org.keycloak.admin.client.KeycloakBuilder.build(KeycloakBuilder.java:147) ~[keycloak-admin-client-4.3.0.Final.jar:4.3.0.Final] at hello.GreetingController.greeting(GreetingController.java:100) ~[main/:na] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_131]

请尝试将这些依赖项添加到您的项目 pom.xml 中。 依赖的版本可以是 3.6.0.Final 或 3.5.0.Final(我不确定你的 keycloak-admin-client 依赖版本。但是,我使用 keycloak-admin-client 3.0.0.Final使用 3.5.0.Final resteasy-client。它运行成功。)

    <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-client</artifactId>
    </dependency>
    <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-jackson2-provider</artifactId>
    </dependency>
    <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-multipart-provider</artifactId>
    </dependency>