From c9aec02d059c0ce5638df65421805d15c739c0bd Mon Sep 17 00:00:00 2001 From: Ethan Atkins Date: Sun, 7 Apr 2019 14:54:11 -0700 Subject: [PATCH] Improve toString for flat classloader It can be helpful to see what jars are available to the underlying url classloader as well as what the parent classloader is. --- main/src/main/scala/sbt/internal/ClassLoaders.scala | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/main/src/main/scala/sbt/internal/ClassLoaders.scala b/main/src/main/scala/sbt/internal/ClassLoaders.scala index 8e9e927f8..4bd40814c 100644 --- a/main/src/main/scala/sbt/internal/ClassLoaders.scala +++ b/main/src/main/scala/sbt/internal/ClassLoaders.scala @@ -198,7 +198,10 @@ private[sbt] object ClassLoaders { // helper methods private def flatLoader(classpath: Seq[File], parent: ClassLoader): ClassLoader = - new URLClassLoader(classpath.map(_.toURI.toURL).toArray, parent) + new URLClassLoader(classpath.map(_.toURI.toURL).toArray, parent) { + override def toString: String = + s"FlatClassLoader(parent = $interfaceLoader, jars =\n${classpath.mkString("\n")}\n)" + } }