From 6070bc061d9acbcedf0ea33895ade60a100013e6 Mon Sep 17 00:00:00 2001 From: Maksymilian Pawlak <120831+m4ksio@users.noreply.github.com> Date: Mon, 26 Feb 2018 12:43:22 +0000 Subject: [PATCH] Close classloader after use --- .../main/kotlin/net/corda/nodeapi/internal/ClassloaderUtils.kt | 1 + 1 file changed, 1 insertion(+) diff --git a/node-api/src/main/kotlin/net/corda/nodeapi/internal/ClassloaderUtils.kt b/node-api/src/main/kotlin/net/corda/nodeapi/internal/ClassloaderUtils.kt index 774e30e2c0..49739303a1 100644 --- a/node-api/src/main/kotlin/net/corda/nodeapi/internal/ClassloaderUtils.kt +++ b/node-api/src/main/kotlin/net/corda/nodeapi/internal/ClassloaderUtils.kt @@ -26,6 +26,7 @@ fun scanJarForContracts(cordappJarPath: String): List { // Only keep instantiable contracts val classLoader = URLClassLoader(arrayOf(File(cordappJarPath).toURL()), currentClassLoader) val concreteContracts = contracts.map(classLoader::loadClass).filter { !it.isInterface && !Modifier.isAbstract(it.modifiers) } + classLoader.close() return concreteContracts.map { it.name } }