diff --git a/mirai-console/backend/mirai-console/src/internal/plugin/JvmPluginClassLoader.kt b/mirai-console/backend/mirai-console/src/internal/plugin/JvmPluginClassLoader.kt index bc40dc9fd18..b1d2ddc3de3 100644 --- a/mirai-console/backend/mirai-console/src/internal/plugin/JvmPluginClassLoader.kt +++ b/mirai-console/backend/mirai-console/src/internal/plugin/JvmPluginClassLoader.kt @@ -207,7 +207,7 @@ internal class JvmPluginClassLoaderN : URLClassLoader { this.sharedLibrariesLogger = ctx.sharedLibrariesLoader this.file = file this.ctx = ctx - init0() + init1() } @Suppress("Since15") @@ -218,7 +218,16 @@ internal class JvmPluginClassLoaderN : URLClassLoader { this.sharedLibrariesLogger = ctx.sharedLibrariesLoader this.file = file this.ctx = ctx - init0() + init1() + } + + private fun init1() { + try { + init0() + } catch (e: Throwable) { + e.addSuppressed(RuntimeException("Failed to initialize new JvmPluginClassLoader, file=$file")) + throw e + } } private fun init0() {