diff --git a/repl/scala-2.11/src/main/scala/org/apache/spark/repl/Main.scala b/repl/scala-2.11/src/main/scala/org/apache/spark/repl/Main.scala index b8b38e828b2557b8d2233d5f98d35abc4aa5cee5..9702a1e653c32b4fe768f5381b1d1a305d4f590f 100644 --- a/repl/scala-2.11/src/main/scala/org/apache/spark/repl/Main.scala +++ b/repl/scala-2.11/src/main/scala/org/apache/spark/repl/Main.scala @@ -18,6 +18,7 @@ package org.apache.spark.repl import java.io.File +import java.net.URI import java.util.Locale import scala.tools.nsc.GenericRunnerSettings @@ -56,7 +57,10 @@ object Main extends Logging { // Visible for testing private[repl] def doMain(args: Array[String], _interp: SparkILoop): Unit = { interp = _interp - val jars = Utils.getUserJars(conf, isShell = true).mkString(File.pathSeparator) + val jars = Utils.getUserJars(conf, isShell = true) + // Remove file:///, file:// or file:/ scheme if exists for each jar + .map { x => if (x.startsWith("file:")) new File(new URI(x)).getPath else x } + .mkString(File.pathSeparator) val interpArguments = List( "-Yrepl-class-based", "-Yrepl-outdir", s"${outputDir.getAbsolutePath}",