Невозможно загрузить класс с именем DefaultDynamicJwkBuilder из контекста потока.JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Невозможно загрузить класс с именем DefaultDynamicJwkBuilder из контекста потока.

Сообщение Anonymous »

Я пытаюсь создать JWK из jjwt-api с помощью приведенного ниже кода. Это всего лишь простой фрагмент, который пытается сгенерировать JWK с RSA 256 (2048 бит)

import com.google.gson.Gson;
import io.jsonwebtoken.Jwts;
import io.jsonwebtoken.security.Jwks;
import io.jsonwebtoken.security.RsaPrivateJwk;

import java.nio.charset.StandardCharsets;
import java.security.interfaces.RSAPrivateKey;

public class Test {

public static void main(String[] args) {
RsaPrivateJwk privJwk = Jwks.builder()
.id("test-key-id")
.key((RSAPrivateKey) Jwts.SIG.RS256.keyPair().build().getPrivate()) //2048 bits
.build();
String jwkJson = new String(new Gson().toJson(privJwk).getBytes(StandardCharsets.UTF_8), StandardCharsets.UTF_8);
System.out.println(jwkJson);
}

}


Это мой помпон


xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0

org.example
artifact
1.0-SNAPSHOT


17
17
UTF-8




io.jsonwebtoken
jjwt-api
0.12.6


io.jsonwebtoken
jjwt-impl
0.12.6
runtime


io.jsonwebtoken
jjwt-gson
0.12.6


commons-cli
commons-cli
1.9.0






Я получаю приведенное ниже исключение, несмотря на то, что jjwt-impl является зависимостью времени выполнения. Я пробовал несколько вещей, например, очистку и повторный импорт проекта, но это не помогло.
/usr/lib/jvm/jdk-17.0.12-oracle-x64/bin/java -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:57679,suspend=y,server=n -javaagent:/home/abhi/Downloads/idea-IC-242.20224.387/plugins/java/lib/rt/debugger-agent.jar -Dkotlinx.coroutines.debug.enable.creation.stack.trace=false -Ddebugger.agent.enable.coroutines=true -Dfile.encoding=UTF-8 -classpath /home/abhi/Projects/lib-service-java/target/classes:/home/abhi/.m2/repository/io/jsonwebtoken/jjwt-api/0.12.6/jjwt-api-0.12.6.jar:/home/abhi/.m2/repository/com/google/code/gson/gson/2.9.0/gson-2.9.0.jar:/home/abhi/.m2/repository/commons-cli/commons-cli/1.9.0/commons-cli-1.9.0.jar:/home/abhi/Downloads/idea-IC-242.20224.387/lib/idea_rt.jar Test
Connected to the target VM, address: '127.0.0.1:57679', transport: 'socket'
Exception in thread "main" io.jsonwebtoken.lang.UnknownClassException: Unable to load class named [io.jsonwebtoken.impl.security.DefaultDynamicJwkBuilder] from the thread context, current, or system/application ClassLoaders.  All heuristics have been exhausted.  Class could not be found.  Have you remembered to include the jjwt-impl.jar in your runtime classpath?
at io.jsonwebtoken.lang.Classes.forName(Classes.java:90)
at io.jsonwebtoken.lang.Classes.newInstance(Classes.java:173)
at io.jsonwebtoken.security.Jwks.builder(Jwks.java:56)
at Test.main(Test.java:12)
Disconnected from the target VM, address: '127.0.0.1:57679', transport: 'socket'
Process finished with exit code 1


Подробнее здесь: https://stackoverflow.com/questions/792 ... ad-context
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»