From 7ceb28e923a547a637e49f0011bcd8ab996594fb Mon Sep 17 00:00:00 2001 From: DarkAtra Date: Sat, 10 Aug 2024 17:06:35 +0200 Subject: [PATCH] chore: add temporary nitrite graalvm hints see https://github.com/nitrite/nitrite-java/pull/1014 --- pom.xml | 2 +- .../vrising/discord/BotRuntimeHints.kt | 28 +++++++++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index cfb8370..fa91933 100644 --- a/pom.xml +++ b/pom.xml @@ -40,7 +40,7 @@ 2.3.11 1.2.2 5.0.0 - 4.3.1-SNAPSHOT + 4.3.0-SNAPSHOT 1.8.0 5.3.1 diff --git a/src/main/kotlin/de/darkatra/vrising/discord/BotRuntimeHints.kt b/src/main/kotlin/de/darkatra/vrising/discord/BotRuntimeHints.kt index 9bd31f2..e90b84a 100644 --- a/src/main/kotlin/de/darkatra/vrising/discord/BotRuntimeHints.kt +++ b/src/main/kotlin/de/darkatra/vrising/discord/BotRuntimeHints.kt @@ -44,6 +44,34 @@ class BotRuntimeHints : RuntimeHintsRegistrar { override fun registerHints(hints: RuntimeHints, classLoader: ClassLoader?) { + // FIXME: required by nitrite until https://github.com/nitrite/nitrite-java/pull/1014 is released + arrayOf( + "org.dizitart.no2.mvstore.compat.v1.mvstore.fs.FilePathDisk", + "org.dizitart.no2.mvstore.compat.v1.mvstore.fs.FilePathNio", + "org.dizitart.no2.mvstore.compat.v1.mvstore.fs.FilePathEncrypt", + "org.h2.store.fs.FilePathMem", + "org.h2.store.fs.FilePathMemLZF", + "org.h2.store.fs.FilePathNioMem", + "org.h2.store.fs.FilePathNioMemLZF", + "org.h2.store.fs.FilePathSplit", + "org.h2.store.fs.FilePathNioMapped", + "org.h2.store.fs.FilePathAsync", + "org.h2.store.fs.FilePathZip", + "org.h2.store.fs.FilePathRetryOnInterrupt" + ).forEach { clazz -> + hints.reflection() + .registerType(TypeReference.of(clazz), MemberCategory.INVOKE_DECLARED_CONSTRUCTORS) + } + hints.serialization() + .registerType(TypeReference.of("org.dizitart.no2.mvstore.compat.v1.Compat\$UserCredential")) + .registerType(TypeReference.of("org.dizitart.no2.mvstore.compat.v1.Compat\$Document")) + .registerType(TypeReference.of("org.dizitart.no2.mvstore.compat.v1.Compat\$Index")) + .registerType(TypeReference.of("org.dizitart.no2.mvstore.compat.v1.Compat\$IndexMeta")) + .registerType(TypeReference.of("org.dizitart.no2.mvstore.compat.v1.Compat\$Attributes")) + .registerType(TypeReference.of("org.dizitart.no2.mvstore.compat.v1.Compat\$NitriteId")) + .registerType(java.util.concurrent.ConcurrentSkipListMap::class.java) + .registerType(java.util.concurrent.ConcurrentSkipListSet::class.java) + // required by the bot bindingReflectionHintsRegistrar.registerReflectionHints( hints.reflection(),