diff options
Diffstat (limited to 'core')
-rw-r--r-- | core/src/mill/util/ClassLoader.scala | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/core/src/mill/util/ClassLoader.scala b/core/src/mill/util/ClassLoader.scala index 9678989e..c0421a7b 100644 --- a/core/src/mill/util/ClassLoader.scala +++ b/core/src/mill/util/ClassLoader.scala @@ -12,7 +12,12 @@ object ClassLoader { new URLClassLoader( makeUrls(urls).toArray, refinePlatformParent(parent) - ) + ) { + override def findClass(name: String): Class[_] = { + if (name.startsWith("com.sun.jna")) getClass.getClassLoader.loadClass(name) + else super.findClass(name) + } + } } def create(urls: Seq[URL], @@ -24,7 +29,8 @@ object ClassLoader { refinePlatformParent(parent) ) { override def findClass(name: String): Class[_] = { - customFindClass(name).getOrElse(super.findClass(name)) + if (name.startsWith("com.sun.jna")) getClass.getClassLoader.loadClass(name) + else customFindClass(name).getOrElse(super.findClass(name)) } } } |