aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore2
-rwxr-xr-xalltests2
-rw-r--r--buildfile22
-rwxr-xr-xrun4
-rw-r--r--src/main/java/spark/compress/lzf/LZF.java (renamed from src/java/spark/compress/lzf/LZF.java)0
-rw-r--r--src/main/java/spark/compress/lzf/LZFInputStream.java (renamed from src/java/spark/compress/lzf/LZFInputStream.java)0
-rw-r--r--src/main/java/spark/compress/lzf/LZFOutputStream.java (renamed from src/java/spark/compress/lzf/LZFOutputStream.java)0
-rw-r--r--src/main/native/Makefile (renamed from src/native/Makefile)0
-rw-r--r--src/main/native/spark_compress_lzf_LZF.c (renamed from src/native/spark_compress_lzf_LZF.c)0
-rw-r--r--src/main/scala/spark/Accumulators.scala (renamed from src/scala/spark/Accumulators.scala)0
-rw-r--r--src/main/scala/spark/BoundedMemoryCache.scala (renamed from src/scala/spark/BoundedMemoryCache.scala)0
-rw-r--r--src/main/scala/spark/Broadcast.scala (renamed from src/scala/spark/Broadcast.scala)0
-rw-r--r--src/main/scala/spark/Cache.scala (renamed from src/scala/spark/Cache.scala)0
-rw-r--r--src/main/scala/spark/ClosureCleaner.scala (renamed from src/scala/spark/ClosureCleaner.scala)0
-rw-r--r--src/main/scala/spark/DfsShuffle.scala (renamed from src/scala/spark/DfsShuffle.scala)0
-rw-r--r--src/main/scala/spark/Executor.scala (renamed from src/scala/spark/Executor.scala)0
-rw-r--r--src/main/scala/spark/HadoopFile.scala (renamed from src/scala/spark/HadoopFile.scala)0
-rw-r--r--src/main/scala/spark/HttpServer.scala (renamed from src/scala/spark/HttpServer.scala)0
-rw-r--r--src/main/scala/spark/Job.scala (renamed from src/scala/spark/Job.scala)0
-rw-r--r--src/main/scala/spark/LocalFileShuffle.scala (renamed from src/scala/spark/LocalFileShuffle.scala)0
-rw-r--r--src/main/scala/spark/LocalScheduler.scala (renamed from src/scala/spark/LocalScheduler.scala)0
-rw-r--r--src/main/scala/spark/Logging.scala (renamed from src/scala/spark/Logging.scala)0
-rw-r--r--src/main/scala/spark/MesosScheduler.scala (renamed from src/scala/spark/MesosScheduler.scala)0
-rw-r--r--src/main/scala/spark/NumberedSplitRDD.scala (renamed from src/scala/spark/NumberedSplitRDD.scala)0
-rw-r--r--src/main/scala/spark/ParallelArray.scala (renamed from src/scala/spark/ParallelArray.scala)0
-rw-r--r--src/main/scala/spark/RDD.scala (renamed from src/scala/spark/RDD.scala)0
-rw-r--r--src/main/scala/spark/Scheduler.scala (renamed from src/scala/spark/Scheduler.scala)0
-rw-r--r--src/main/scala/spark/SerializableWritable.scala (renamed from src/scala/spark/SerializableWritable.scala)0
-rw-r--r--src/main/scala/spark/Shuffle.scala (renamed from src/scala/spark/Shuffle.scala)0
-rw-r--r--src/main/scala/spark/SimpleJob.scala (renamed from src/scala/spark/SimpleJob.scala)0
-rw-r--r--src/main/scala/spark/SizeEstimator.scala (renamed from src/scala/spark/SizeEstimator.scala)0
-rw-r--r--src/main/scala/spark/SoftReferenceCache.scala (renamed from src/scala/spark/SoftReferenceCache.scala)0
-rw-r--r--src/main/scala/spark/SparkContext.scala (renamed from src/scala/spark/SparkContext.scala)0
-rw-r--r--src/main/scala/spark/SparkException.scala (renamed from src/scala/spark/SparkException.scala)0
-rw-r--r--src/main/scala/spark/Split.scala (renamed from src/scala/spark/Split.scala)0
-rw-r--r--src/main/scala/spark/Task.scala (renamed from src/scala/spark/Task.scala)0
-rw-r--r--src/main/scala/spark/TaskResult.scala (renamed from src/scala/spark/TaskResult.scala)0
-rw-r--r--src/main/scala/spark/Utils.scala (renamed from src/scala/spark/Utils.scala)0
-rw-r--r--src/main/scala/spark/WeakReferenceCache.scala (renamed from src/scala/spark/WeakReferenceCache.scala)0
-rw-r--r--src/main/scala/spark/repl/ExecutorClassLoader.scala (renamed from src/scala/spark/repl/ExecutorClassLoader.scala)0
-rw-r--r--src/main/scala/spark/repl/Main.scala (renamed from src/scala/spark/repl/Main.scala)0
-rw-r--r--src/main/scala/spark/repl/SparkCompletion.scala (renamed from src/scala/spark/repl/SparkCompletion.scala)4
-rw-r--r--src/main/scala/spark/repl/SparkCompletionOutput.scala (renamed from src/scala/spark/repl/SparkCompletionOutput.scala)0
-rw-r--r--src/main/scala/spark/repl/SparkInteractiveReader.scala (renamed from src/scala/spark/repl/SparkInteractiveReader.scala)0
-rw-r--r--src/main/scala/spark/repl/SparkInterpreter.scala (renamed from src/scala/spark/repl/SparkInterpreter.scala)0
-rw-r--r--src/main/scala/spark/repl/SparkInterpreterLoop.scala (renamed from src/scala/spark/repl/SparkInterpreterLoop.scala)3
-rw-r--r--src/main/scala/spark/repl/SparkInterpreterSettings.scala (renamed from src/scala/spark/repl/SparkInterpreterSettings.scala)0
-rw-r--r--src/main/scala/spark/repl/SparkJLineReader.scala (renamed from src/scala/spark/repl/SparkJLineReader.scala)0
-rw-r--r--src/main/scala/spark/repl/SparkSimpleReader.scala (renamed from src/scala/spark/repl/SparkSimpleReader.scala)0
-rw-r--r--src/test/scala/spark/ParallelArraySplitSuite.scala (renamed from src/test/spark/ParallelArraySplitSuite.scala)0
-rw-r--r--src/test/scala/spark/ShuffleSuite.scala (renamed from src/test/spark/ShuffleSuite.scala)0
-rw-r--r--src/test/scala/spark/repl/ReplSuite.scala (renamed from src/test/spark/repl/ReplSuite.scala)17
52 files changed, 47 insertions, 7 deletions
diff --git a/.gitignore b/.gitignore
index 5abdec5d50..7c90cbfd72 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,3 +8,5 @@ third_party/libmesos.dylib
conf/java-opts
conf/spark-env.sh
conf/log4j.properties
+target
+reports
diff --git a/alltests b/alltests
index cd11604855..50802d4578 100755
--- a/alltests
+++ b/alltests
@@ -8,4 +8,4 @@ if [ -d $RESULTS_DIR ]; then
rm -r $RESULTS_DIR
fi
mkdir -p $RESULTS_DIR
-$FWDIR/run org.scalatest.tools.Runner -p $FWDIR/build/classes -u $RESULTS_DIR -o $@
+$FWDIR/run org.scalatest.tools.Runner -p $FWDIR/target/test/classes -u $RESULTS_DIR -o $@
diff --git a/buildfile b/buildfile
new file mode 100644
index 0000000000..aaec9dc1bf
--- /dev/null
+++ b/buildfile
@@ -0,0 +1,22 @@
+require 'buildr/scala'
+
+# Version number for this release
+VERSION_NUMBER = "0.0.0"
+# Group identifier for your projects
+GROUP = "spark"
+COPYRIGHT = ""
+
+# Specify Maven 2.0 remote repositories here, like this:
+repositories.remote << "http://www.ibiblio.org/maven2/"
+
+THIRD_PARTY_JARS = Dir["third_party/**/*.jar"]
+
+desc "The Spark project"
+define "spark" do
+ project.version = VERSION_NUMBER
+ project.group = GROUP
+ manifest["Implementation-Vendor"] = COPYRIGHT
+ compile.with THIRD_PARTY_JARS
+ package(:jar)
+ test.using :scalatest, :fork => true
+end
diff --git a/run b/run
index d6f7d920c5..b3748e78ab 100755
--- a/run
+++ b/run
@@ -33,8 +33,8 @@ if [ -e $FWDIR/conf/java-opts ] ; then
fi
export JAVA_OPTS
-# Build up classpath
-CLASSPATH="$SPARK_CLASSPATH:$FWDIR/build/classes:$MESOS_CLASSPATH"
+# build up classpath
+CLASSPATH="$SPARK_CLASSPATH:$FWDIR/target/classes:$FWDIR/target/test/classes:$MESOS_CLASSPATH"
CLASSPATH+=:$FWDIR/conf
CLASSPATH+=:$FWDIR/third_party/mesos.jar
CLASSPATH+=:$FWDIR/third_party/asm-3.2/lib/all/asm-all-3.2.jar
diff --git a/src/java/spark/compress/lzf/LZF.java b/src/main/java/spark/compress/lzf/LZF.java
index 294a0494ec..294a0494ec 100644
--- a/src/java/spark/compress/lzf/LZF.java
+++ b/src/main/java/spark/compress/lzf/LZF.java
diff --git a/src/java/spark/compress/lzf/LZFInputStream.java b/src/main/java/spark/compress/lzf/LZFInputStream.java
index 16bc687489..16bc687489 100644
--- a/src/java/spark/compress/lzf/LZFInputStream.java
+++ b/src/main/java/spark/compress/lzf/LZFInputStream.java
diff --git a/src/java/spark/compress/lzf/LZFOutputStream.java b/src/main/java/spark/compress/lzf/LZFOutputStream.java
index 5f65e95d2a..5f65e95d2a 100644
--- a/src/java/spark/compress/lzf/LZFOutputStream.java
+++ b/src/main/java/spark/compress/lzf/LZFOutputStream.java
diff --git a/src/native/Makefile b/src/main/native/Makefile
index 6236e26f3d..6236e26f3d 100644
--- a/src/native/Makefile
+++ b/src/main/native/Makefile
diff --git a/src/native/spark_compress_lzf_LZF.c b/src/main/native/spark_compress_lzf_LZF.c
index c2a59def3e..c2a59def3e 100644
--- a/src/native/spark_compress_lzf_LZF.c
+++ b/src/main/native/spark_compress_lzf_LZF.c
diff --git a/src/scala/spark/Accumulators.scala b/src/main/scala/spark/Accumulators.scala
index ee93d3c85c..ee93d3c85c 100644
--- a/src/scala/spark/Accumulators.scala
+++ b/src/main/scala/spark/Accumulators.scala
diff --git a/src/scala/spark/BoundedMemoryCache.scala b/src/main/scala/spark/BoundedMemoryCache.scala
index 19d9bebfe5..19d9bebfe5 100644
--- a/src/scala/spark/BoundedMemoryCache.scala
+++ b/src/main/scala/spark/BoundedMemoryCache.scala
diff --git a/src/scala/spark/Broadcast.scala b/src/main/scala/spark/Broadcast.scala
index 5089dca82e..5089dca82e 100644
--- a/src/scala/spark/Broadcast.scala
+++ b/src/main/scala/spark/Broadcast.scala
diff --git a/src/scala/spark/Cache.scala b/src/main/scala/spark/Cache.scala
index 9887520758..9887520758 100644
--- a/src/scala/spark/Cache.scala
+++ b/src/main/scala/spark/Cache.scala
diff --git a/src/scala/spark/ClosureCleaner.scala b/src/main/scala/spark/ClosureCleaner.scala
index 0e0b3954d4..0e0b3954d4 100644
--- a/src/scala/spark/ClosureCleaner.scala
+++ b/src/main/scala/spark/ClosureCleaner.scala
diff --git a/src/scala/spark/DfsShuffle.scala b/src/main/scala/spark/DfsShuffle.scala
index 7a42bf2d06..7a42bf2d06 100644
--- a/src/scala/spark/DfsShuffle.scala
+++ b/src/main/scala/spark/DfsShuffle.scala
diff --git a/src/scala/spark/Executor.scala b/src/main/scala/spark/Executor.scala
index b4d023b428..b4d023b428 100644
--- a/src/scala/spark/Executor.scala
+++ b/src/main/scala/spark/Executor.scala
diff --git a/src/scala/spark/HadoopFile.scala b/src/main/scala/spark/HadoopFile.scala
index a63c9d8a94..a63c9d8a94 100644
--- a/src/scala/spark/HadoopFile.scala
+++ b/src/main/scala/spark/HadoopFile.scala
diff --git a/src/scala/spark/HttpServer.scala b/src/main/scala/spark/HttpServer.scala
index d2a663ac1f..d2a663ac1f 100644
--- a/src/scala/spark/HttpServer.scala
+++ b/src/main/scala/spark/HttpServer.scala
diff --git a/src/scala/spark/Job.scala b/src/main/scala/spark/Job.scala
index 6abbcbce51..6abbcbce51 100644
--- a/src/scala/spark/Job.scala
+++ b/src/main/scala/spark/Job.scala
diff --git a/src/scala/spark/LocalFileShuffle.scala b/src/main/scala/spark/LocalFileShuffle.scala
index 367599cfb4..367599cfb4 100644
--- a/src/scala/spark/LocalFileShuffle.scala
+++ b/src/main/scala/spark/LocalFileShuffle.scala
diff --git a/src/scala/spark/LocalScheduler.scala b/src/main/scala/spark/LocalScheduler.scala
index 20954a1224..20954a1224 100644
--- a/src/scala/spark/LocalScheduler.scala
+++ b/src/main/scala/spark/LocalScheduler.scala
diff --git a/src/scala/spark/Logging.scala b/src/main/scala/spark/Logging.scala
index 2d1feebbb1..2d1feebbb1 100644
--- a/src/scala/spark/Logging.scala
+++ b/src/main/scala/spark/Logging.scala
diff --git a/src/scala/spark/MesosScheduler.scala b/src/main/scala/spark/MesosScheduler.scala
index c45eff64d4..c45eff64d4 100644
--- a/src/scala/spark/MesosScheduler.scala
+++ b/src/main/scala/spark/MesosScheduler.scala
diff --git a/src/scala/spark/NumberedSplitRDD.scala b/src/main/scala/spark/NumberedSplitRDD.scala
index 7b12210d84..7b12210d84 100644
--- a/src/scala/spark/NumberedSplitRDD.scala
+++ b/src/main/scala/spark/NumberedSplitRDD.scala
diff --git a/src/scala/spark/ParallelArray.scala b/src/main/scala/spark/ParallelArray.scala
index a01904d61c..a01904d61c 100644
--- a/src/scala/spark/ParallelArray.scala
+++ b/src/main/scala/spark/ParallelArray.scala
diff --git a/src/scala/spark/RDD.scala b/src/main/scala/spark/RDD.scala
index bac59319a0..bac59319a0 100644
--- a/src/scala/spark/RDD.scala
+++ b/src/main/scala/spark/RDD.scala
diff --git a/src/scala/spark/Scheduler.scala b/src/main/scala/spark/Scheduler.scala
index b9f3128c82..b9f3128c82 100644
--- a/src/scala/spark/Scheduler.scala
+++ b/src/main/scala/spark/Scheduler.scala
diff --git a/src/scala/spark/SerializableWritable.scala b/src/main/scala/spark/SerializableWritable.scala
index ae393d06d3..ae393d06d3 100644
--- a/src/scala/spark/SerializableWritable.scala
+++ b/src/main/scala/spark/SerializableWritable.scala
diff --git a/src/scala/spark/Shuffle.scala b/src/main/scala/spark/Shuffle.scala
index 4c5649b537..4c5649b537 100644
--- a/src/scala/spark/Shuffle.scala
+++ b/src/main/scala/spark/Shuffle.scala
diff --git a/src/scala/spark/SimpleJob.scala b/src/main/scala/spark/SimpleJob.scala
index 09846ccc34..09846ccc34 100644
--- a/src/scala/spark/SimpleJob.scala
+++ b/src/main/scala/spark/SimpleJob.scala
diff --git a/src/scala/spark/SizeEstimator.scala b/src/main/scala/spark/SizeEstimator.scala
index 12dd19d704..12dd19d704 100644
--- a/src/scala/spark/SizeEstimator.scala
+++ b/src/main/scala/spark/SizeEstimator.scala
diff --git a/src/scala/spark/SoftReferenceCache.scala b/src/main/scala/spark/SoftReferenceCache.scala
index e84aa57efa..e84aa57efa 100644
--- a/src/scala/spark/SoftReferenceCache.scala
+++ b/src/main/scala/spark/SoftReferenceCache.scala
diff --git a/src/scala/spark/SparkContext.scala b/src/main/scala/spark/SparkContext.scala
index 02e80c7756..02e80c7756 100644
--- a/src/scala/spark/SparkContext.scala
+++ b/src/main/scala/spark/SparkContext.scala
diff --git a/src/scala/spark/SparkException.scala b/src/main/scala/spark/SparkException.scala
index 6f9be1a94f..6f9be1a94f 100644
--- a/src/scala/spark/SparkException.scala
+++ b/src/main/scala/spark/SparkException.scala
diff --git a/src/scala/spark/Split.scala b/src/main/scala/spark/Split.scala
index 116cd16370..116cd16370 100644
--- a/src/scala/spark/Split.scala
+++ b/src/main/scala/spark/Split.scala
diff --git a/src/scala/spark/Task.scala b/src/main/scala/spark/Task.scala
index 6e94009f6e..6e94009f6e 100644
--- a/src/scala/spark/Task.scala
+++ b/src/main/scala/spark/Task.scala
diff --git a/src/scala/spark/TaskResult.scala b/src/main/scala/spark/TaskResult.scala
index db33c9ff44..db33c9ff44 100644
--- a/src/scala/spark/TaskResult.scala
+++ b/src/main/scala/spark/TaskResult.scala
diff --git a/src/scala/spark/Utils.scala b/src/main/scala/spark/Utils.scala
index e333dd9c91..e333dd9c91 100644
--- a/src/scala/spark/Utils.scala
+++ b/src/main/scala/spark/Utils.scala
diff --git a/src/scala/spark/WeakReferenceCache.scala b/src/main/scala/spark/WeakReferenceCache.scala
index ddca065454..ddca065454 100644
--- a/src/scala/spark/WeakReferenceCache.scala
+++ b/src/main/scala/spark/WeakReferenceCache.scala
diff --git a/src/scala/spark/repl/ExecutorClassLoader.scala b/src/main/scala/spark/repl/ExecutorClassLoader.scala
index 13d81ec1cf..13d81ec1cf 100644
--- a/src/scala/spark/repl/ExecutorClassLoader.scala
+++ b/src/main/scala/spark/repl/ExecutorClassLoader.scala
diff --git a/src/scala/spark/repl/Main.scala b/src/main/scala/spark/repl/Main.scala
index f00df5aa58..f00df5aa58 100644
--- a/src/scala/spark/repl/Main.scala
+++ b/src/main/scala/spark/repl/Main.scala
diff --git a/src/scala/spark/repl/SparkCompletion.scala b/src/main/scala/spark/repl/SparkCompletion.scala
index d67438445b..ac70db4dbe 100644
--- a/src/scala/spark/repl/SparkCompletion.scala
+++ b/src/main/scala/spark/repl/SparkCompletion.scala
@@ -310,7 +310,7 @@ class SparkCompletion(val repl: SparkInterpreter) extends SparkCompletionOutput
else xs.reduceLeft(_ zip _ takeWhile (x => x._1 == x._2) map (_._1) mkString)
// This is jline's entry point for completion.
- override def complete(_buf: String, cursor: Int, candidates: JList[String]): Int = {
+ override def complete(_buf: String, cursor: Int, candidates: JList[_]): Int = {
val buf = onull(_buf)
verbosity = if (isConsecutiveTabs(buf, cursor)) verbosity + 1 else 0
DBG("complete(%s, %d) last = (%s, %d), verbosity: %s".format(buf, cursor, lastBuf, lastCursor, verbosity))
@@ -321,7 +321,7 @@ class SparkCompletion(val repl: SparkInterpreter) extends SparkCompletionOutput
case Nil => None
case xs =>
// modify in place and return the position
- xs foreach (candidates add _)
+ xs.foreach(x => candidates.asInstanceOf[JList[AnyRef]].add(x))
// update the last buffer unless this is an alternatives list
if (xs contains "") Some(p.cursor)
diff --git a/src/scala/spark/repl/SparkCompletionOutput.scala b/src/main/scala/spark/repl/SparkCompletionOutput.scala
index 5ac46e3412..5ac46e3412 100644
--- a/src/scala/spark/repl/SparkCompletionOutput.scala
+++ b/src/main/scala/spark/repl/SparkCompletionOutput.scala
diff --git a/src/scala/spark/repl/SparkInteractiveReader.scala b/src/main/scala/spark/repl/SparkInteractiveReader.scala
index 4f5a0a6fa0..4f5a0a6fa0 100644
--- a/src/scala/spark/repl/SparkInteractiveReader.scala
+++ b/src/main/scala/spark/repl/SparkInteractiveReader.scala
diff --git a/src/scala/spark/repl/SparkInterpreter.scala b/src/main/scala/spark/repl/SparkInterpreter.scala
index 10ea346658..10ea346658 100644
--- a/src/scala/spark/repl/SparkInterpreter.scala
+++ b/src/main/scala/spark/repl/SparkInterpreter.scala
diff --git a/src/scala/spark/repl/SparkInterpreterLoop.scala b/src/main/scala/spark/repl/SparkInterpreterLoop.scala
index 5bad0a37da..d4974009ce 100644
--- a/src/scala/spark/repl/SparkInterpreterLoop.scala
+++ b/src/main/scala/spark/repl/SparkInterpreterLoop.scala
@@ -129,7 +129,8 @@ extends InterpreterControl {
settings.classpath append addedClasspath
interpreter = new SparkInterpreter(settings, out) {
- override protected def parentClassLoader = classOf[SparkInterpreterLoop].getClassLoader
+ override protected def parentClassLoader =
+ classOf[SparkInterpreterLoop].getClassLoader
}
interpreter.setContextClassLoader()
// interpreter.quietBind("settings", "spark.repl.SparkInterpreterSettings", interpreter.isettings)
diff --git a/src/scala/spark/repl/SparkInterpreterSettings.scala b/src/main/scala/spark/repl/SparkInterpreterSettings.scala
index ffa477785b..ffa477785b 100644
--- a/src/scala/spark/repl/SparkInterpreterSettings.scala
+++ b/src/main/scala/spark/repl/SparkInterpreterSettings.scala
diff --git a/src/scala/spark/repl/SparkJLineReader.scala b/src/main/scala/spark/repl/SparkJLineReader.scala
index 9d761c06fc..9d761c06fc 100644
--- a/src/scala/spark/repl/SparkJLineReader.scala
+++ b/src/main/scala/spark/repl/SparkJLineReader.scala
diff --git a/src/scala/spark/repl/SparkSimpleReader.scala b/src/main/scala/spark/repl/SparkSimpleReader.scala
index 2b24c4bf63..2b24c4bf63 100644
--- a/src/scala/spark/repl/SparkSimpleReader.scala
+++ b/src/main/scala/spark/repl/SparkSimpleReader.scala
diff --git a/src/test/spark/ParallelArraySplitSuite.scala b/src/test/scala/spark/ParallelArraySplitSuite.scala
index 222df4e071..222df4e071 100644
--- a/src/test/spark/ParallelArraySplitSuite.scala
+++ b/src/test/scala/spark/ParallelArraySplitSuite.scala
diff --git a/src/test/spark/ShuffleSuite.scala b/src/test/scala/spark/ShuffleSuite.scala
index a5773614e8..a5773614e8 100644
--- a/src/test/spark/ShuffleSuite.scala
+++ b/src/test/scala/spark/ShuffleSuite.scala
diff --git a/src/test/spark/repl/ReplSuite.scala b/src/test/scala/spark/repl/ReplSuite.scala
index 8b38cde85f..225e766c71 100644
--- a/src/test/spark/repl/ReplSuite.scala
+++ b/src/test/scala/spark/repl/ReplSuite.scala
@@ -1,6 +1,10 @@
package spark.repl
import java.io._
+import java.net.URLClassLoader
+
+import scala.collection.mutable.ArrayBuffer
+import scala.collection.JavaConversions._
import org.scalatest.FunSuite
@@ -8,9 +12,20 @@ class ReplSuite extends FunSuite {
def runInterpreter(master: String, input: String): String = {
val in = new BufferedReader(new StringReader(input + "\n"))
val out = new StringWriter()
+ val cl = getClass.getClassLoader
+ var paths = new ArrayBuffer[String]
+ if (cl.isInstanceOf[URLClassLoader]) {
+ val urlLoader = cl.asInstanceOf[URLClassLoader]
+ for (url <- urlLoader.getURLs) {
+ if (url.getProtocol == "file") {
+ paths += url.getFile
+ }
+ }
+ }
val interp = new SparkInterpreterLoop(in, new PrintWriter(out), master)
spark.repl.Main.interp = interp
- interp.main(new Array[String](0))
+ val separator = System.getProperty("path.separator")
+ interp.main(Array("-classpath", paths.mkString(separator)))
spark.repl.Main.interp = null
return out.toString
}