Собственный образ Graalvm моего приложения завершается с ошибкой во время выполнения следующего вызова метода:
Unsafe.allocateInstance(org.lwjgl.PointerBuffer.class);
за исключением:
java.lang.IllegalArgumentException: Class org.lwjgl.PointerBuffer is instantiated reflectively but was never registered. Register the class by using org.graalvm.nativeimage.hosted.RuntimeReflection
at com.oracle.svm.core.graal.snippets.SubstrateAllocationSnippets.hubErrorStub(SubstrateAllocationSnippets.java:246)
Перед созданием собственного образа я запустил приложение с native-image-agent
и он сгенерировал jsons конфигурации graalvm, но reflect-config.json
не имел записи для org.lwjgl.PointerBuffer
.
, даже если я вручную добавлю к reflect-config.json
{
"name":"org.lwjgl.PointerBuffer",
"allDeclaredFields":true,
"allPublicConstructors" : true
"allPublicFields": true,
"allDeclaredMethods": true,
"allPublicMethods": true
}
нативный изображение по-прежнему не удается с вышеупомянутым исключением. Есть ли способ заставить Unsafe.allocateInstance
работать в собственном образе?