in scala-interpreter/src/main/scala/org/apache/toree/kernel/interpreter/scala/ScalaInterpreter.scala [114:133]
protected[scala] def buildClasspath(classLoader: ClassLoader): String = {
def toClassLoaderList( classLoader: ClassLoader ): Seq[ClassLoader] = {
@tailrec
def toClassLoaderListHelper( aClassLoader: ClassLoader, theList: Seq[ClassLoader]):Seq[ClassLoader] = {
if( aClassLoader == null )
return theList
toClassLoaderListHelper( aClassLoader.getParent, aClassLoader +: theList )
}
toClassLoaderListHelper(classLoader, Seq())
}
val urls = toClassLoaderList(classLoader).flatMap{
case cl: java.net.URLClassLoader => cl.getURLs.toList
case a => List()
}
urls.foldLeft("")((l, r) => ClassPath.join(l, r.toString))
}