Changes to fix #383 (to get ammonite working with Spark)

Allow repl classes to be accessed via getResourceAsStream.
Also save compiled classes to a directory.

It is the responsibility of the caller to delete the
ammonite.repl.class.outputdir on exit.
There are more changes needed to get it fully working with Spark.  The
most important one being serving these classes via a HttpServer and
configuring spark so it can load these classes (closures) using
URLClassLoader.  Those changes are outside the scope of this PR.

thanks jvimal! I am traveling right at this moment but should have time to
give it a proper review next week
On Wednesday, 18 May 2016, jvimal<EMAIL_ADDRESS>wrote:

Allow repl classes to be accessed via getResourceAsStream.
Also save compiled classes to a directory.

It is the responsibility of the caller to delete the
ammonite.repl.class.outputdir on exit.
There are more changes needed to get it fully working with Spark. The
most important one being serving these classes via a HttpServer and
configuring spark so it can load these classes (closures) using
URLClassLoader. Those changes are outside the scope of this PR.
You can view, comment on, or merge this pull request online at:
https://github.com/lihaoyi/Ammonite/pull/389
Commit Summary

Changes to fix #383 (to get ammonite working with Spark)

File Changes

M repl/src/main/scala/ammonite/repl/Repl.scala
https://github.com/lihaoyi/Ammonite/pull/389/files#diff-0 (4)
M repl/src/main/scala/ammonite/repl/interp/ClassLoaders.scala
https://github.com/lihaoyi/Ammonite/pull/389/files#diff-1 (33)
M repl/src/main/scala/ammonite/repl/interp/Evaluator.scala
https://github.com/lihaoyi/Ammonite/pull/389/files#diff-2 (3)

Patch Links:

https://github.com/lihaoyi/Ammonite/pull/389.patch
https://github.com/lihaoyi/Ammonite/pull/389.diff

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/lihaoyi/Ammonite/pull/389

No worries!
For the record: this should also be a step to fix #382 (duplicate of #383).

Some comments but otherwise looks good!

@lihaoyi Sorry for the delay.  Please take another look.  I added a simple unit test as well.  There are other failing tests, so here is the relevant output from sbt ++2.10.5 test:
[info] --------------Starting Suite ammonite.repl.session.EvaluatorTests--------------
[info] ammonite.repl.session.EvaluatorTests.simpleExpressions		Success
[info] ammonite.repl.session.EvaluatorTests.vals		Success
[info] ammonite.repl.session.EvaluatorTests.lazyvals		Success
[info] ammonite.repl.session.EvaluatorTests.vars		Success
[info] ammonite.repl.session.EvaluatorTests.defs		Success
[info] ammonite.repl.session.EvaluatorTests.types		Success
[info] ammonite.repl.session.EvaluatorTests.library		Success
[info] ammonite.repl.session.EvaluatorTests.classes		Success
[info] ammonite.repl.session.EvaluatorTests.packageImport		Success
[info] ammonite.repl.session.EvaluatorTests.nesting		Success
[info] ammonite.repl.session.EvaluatorTests.multistatement		Success
[info] ammonite.repl.session.EvaluatorTests.multiassign		Success
[info] ammonite.repl.session.EvaluatorTests.parsingProblems		Success
[info] ammonite.repl.session.EvaluatorTests.backticks		Success
[info] ammonite.repl.session.EvaluatorTests.classOutputDir		Success  <--- This one
[info] ammonite.repl.session.EvaluatorTests		Success

I've tested this and been using it with Spark 1.2.1 and Spark 1.6.1 without any issues.
The changes needed to work with spark are:

Run a HTTP Server to serve the classes from classOutputDir over http (or https).  I just wrote a simple one using jetty.
Include spark-repl as a maven dependency in your pom.xml.
In SparkConf, set spark.repl.class.uri to http://server:port.

And you are all done.

Looks like the master has changed significantly.  Let me rebase and resubmit.

@lihaoyi there seems to be a regression on master.  The new changes work fine, but if I press "Control-R" for history search, I get this error, which crashes the repl:
I compiled with scala 2.10.5.
Exception in thread "main" java.lang.IllegalArgumentException: requirement failed: end:1 must be less than or equal to length:0
        at scala.Predef$.require(Predef.scala:233)
        at fansi.Str$$anonfun$overlayAll$2.apply(Fansi.scala:174)
        at fansi.Str$$anonfun$overlayAll$2.apply(Fansi.scala:168)
        at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:772)
        at scala.collection.immutable.List.foreach(List.scala:318)
        at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:771)
        at fansi.Str.overlayAll(Fansi.scala:168)
        at fansi.Str.overlay(Fansi.scala:156)
        at ammonite.terminal.filters.HistoryFilter$.mangleBuffer(HistoryFilter.scala:273)
        at ammonite.repl.frontend.AmmoniteFrontEnd$$anonfun$7.apply(AmmoniteFrontEnd.scala:139)
        at ammonite.repl.frontend.AmmoniteFrontEnd$$anonfun$7.apply(AmmoniteFrontEnd.scala:123)
        at ammonite.terminal.Terminal$.x$3$lzycompute$1(Terminal.scala:219)
        at ammonite.terminal.Terminal$.x$3$1(Terminal.scala:219)
        at ammonite.terminal.Terminal$.transformedBuffer0$lzycompute$1(Terminal.scala:219)
        at ammonite.terminal.Terminal$.transformedBuffer0$1(Terminal.scala:219)
        at ammonite.terminal.Terminal$.transformedBuffer$lzycompute$1(Terminal.scala:224)
        at ammonite.terminal.Terminal$.transformedBuffer$1(Terminal.scala:224)
        at ammonite.terminal.Terminal$.readChar$1(Terminal.scala:235)
        at ammonite.terminal.Terminal$.readLine(Terminal.scala:299)
        at ammonite.repl.frontend.AmmoniteFrontEnd.readLine(AmmoniteFrontEnd.scala:118)
        at ammonite.repl.frontend.AmmoniteFrontEnd.action(AmmoniteFrontEnd.scala:27)
        at ammonite.repl.Repl.action(Repl.scala:57)
        at ammonite.repl.Repl.loop$1(Repl.scala:90)
        at ammonite.repl.Repl.run(Repl.scala:108)
        at ammonite.repl.Main.run(Main.scala:66)

@jvimal ahhh not surprising; I've changed a whole bunch of stuff and while it's unit tested the top-level command-line-interaction stuff is basically uncovered.
I'll fix it (thanks for reporting!). Should I look at your code or are you still working on it?

thanks.  yes, please take a look now.  I tested it to the extent I could.
I think the issue is that in HistoryFilter.scala:mangleBuffer, you are not handling the case when buffer: fansi.Str is empty.  If I type something in the shell and press Control-R, it works fine, without issues.

Also, for some reason, fansi module is not recognised properly in IntelliJ IDEA...  if possible please fix that as well, so it's easier to reason about changes to the code!

@lihaoyi this diff seems to prevent the crash, but you might have a better fix 😄
diff --git a/terminal/src/main/scala/ammonite/terminal/filters/HistoryFilter.scala b/terminal/src/main/scala/ammonite/terminal/filters/HistoryFilter.scala
index 1133802..ed2efd3 100644
--- a/terminal/src/main/scala/ammonite/terminal/filters/HistoryFilter.scala
+++ b/terminal/src/main/scala/ammonite/terminal/filters/HistoryFilter.scala
@@ -259,7 +259,7 @@ object HistoryFilter{
                    buffer: fansi.Str,
                    cursor: Int,
                    startColor: fansi.Attr) = {
-    if (!historyFilter.activeSearch) buffer
+    if (!historyFilter.activeSearch || buffer.length == 0) buffer
     else {
       val (searchStart, searchEnd) =
         if (historyFilter.searchTerm.get.isEmpty) (cursor, cursor+1)

These changes look good. One last thing: you said you tested this manually and it worked:

I've tested this and been using it with Spark 1.2.1 and Spark 1.6.1 without any issues.
The changes needed to work with spark are:
Run a HTTP Server to serve the classes from classOutputDir over http (or https). I just wrote a simple   > one using jetty.
Include spark-repl as a maven dependency in your pom.xml.
In SparkConf, set spark.repl.class.uri to http://server:port.
And you are all done.

Could we have an end-to-end test that does this? You can load.ivy whatever you need: spark-repl, jetty, whatever inside one the the check.session blocks, and run whatever code you need to set up the HTTP server. From the sound of it you already know how to get it working, so it's a matter of putting it down in test code so I can run it when i change things and verify I'm not breaking your stuff

@lihaoyi That's a nice idea, also could serve as a good example for others.
I tried a lot to get it working, but I am running into weird difficulties with dependencies.  Here is the script: https://gist.github.com/jvimal/700858f66c745d6ed41ea214f0183ecf.   It fails at "println("Importing sparkcontext")" block.  For some reason, it works fine and goes past that to the end (println("Starting spark test")
) in ammonite shell (0.5.8), but it does not work in the unit test (0.5.9-snapshot).
Could you help me fix this test and understand what's happening?
This one works (till the end, where the test itself fails because that's what this CL fixes):
curl -L -o amm https://git.io/vro0u && chmod +x amm && ./amm
Loading...
Welcome to the Ammonite Repl 0.5.8
(Scala 2.11.8 Java 1.8.0_25)
@ import ammonite.ops._
import ammonite.ops._
@ val classOutputDir = "/tmp"
classOutputDir: String = "/tmp"
@ load.exec(cwd/'repl/'src/'test/'resources/'scripts/"Spark.scala")
Begin spark test
Loading dep set 1
Loading dep set 2
Importing modules
Importing jetty
Importing sparkcontext
Defining simple http server
Starting spark test
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/Users/jvimal/.ivy2/cache/org.slf4j/slf4j-log4j12/jars/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/Users/jvimal/.ivy2/cache/org.slf4j/slf4j-simple/jars/slf4j-simple-1.7.12.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
log4j:WARN No appenders could be found for logger (org.eclipse.jetty.util.log).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
Using Spark's repl log4j profile: org/apache/spark/log4j-defaults-repl.properties
To adjust logging level use sc.setLogLevel("INFO")
16/06/05 10:06:46 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
java.io.IOException: Class not found
  org.apache.xbean.asm5.ClassReader.a(null:-1)
  org.apache.xbean.asm5.ClassReader.<init>(null:-1)
  org.apache.spark.util.ClosureCleaner$.getClassReader(ClosureCleaner.scala:40)
  org.apache.spark.util.ClosureCleaner$.getInnerClosureClasses(ClosureCleaner.scala:81)
  org.apache.spark.util.ClosureCleaner$.org$apache$spark$util$ClosureCleaner$$clean(ClosureCleaner.scala:187)
  org.apache.spark.util.ClosureCleaner$.clean(ClosureCleaner.scala:122)
  org.apache.spark.SparkContext.clean(SparkContext.scala:2055)
  org.apache.spark.rdd.RDD$$anonfun$map$1.apply(RDD.scala:324)
  org.apache.spark.rdd.RDD$$anonfun$map$1.apply(RDD.scala:323)
  org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:150)
  org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:111)
  org.apache.spark.rdd.RDD.withScope(RDD.scala:316)
  org.apache.spark.rdd.RDD.map(RDD.scala:323)
  cmd16$.<init>(Main.scala:164)
  cmd16$.<clinit>(Main.scala:-1)

Also, something about the transitive dependency management seems broken.  In 0.5.8, I didn't have to specify every tiny dependency -- it just worked with far fewer load.ivy calls than the ones listed in the gist linked above.

Thanks for the script, I'll play with it and see if i can make the tests behave

FWIW the Ctrl-R bug has been fixed in master...

Cool, thanks.  Will fix rebase and fix merge conflicts after we fix the test.

@lihaoyi could you set the version on master to 0.6.0-SNAPSHOT?   (It says 0.6.0.)
Whoa, two releases already.  Adding an extra parameter to the constructor is such a PITA when it comes to merge conflicts 😂
Anyway, I can force push and update this branch if you prefer.  Or I can wait until you finish debugging. Lemme know.

@lihaoyi I am hitting an NPE on master.
Exception in thread "main" java.lang.NullPointerException
        at fansi.Str$.apply(Fansi.scala:301)
        at fansi.Str$.implicitApply(Fansi.scala:268)
        at ammonite.repl.Repl$.highlightFrame(Repl.scala:114)
        at ammonite.repl.Repl$$anonfun$9$$anonfun$apply$6.apply(Repl.scala:135)
        at ammonite.repl.Repl$$anonfun$9$$anonfun$apply$6.apply(Repl.scala:135)
        at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
        at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
        at scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33)
        at scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:108)
        at scala.collection.TraversableLike$class.map(TraversableLike.scala:244)
        at scala.collection.mutable.ArrayOps$ofRef.map(ArrayOps.scala:108)
        at ammonite.repl.Repl$$anonfun$9.apply(Repl.scala:135)
        at ammonite.repl.Repl$$anonfun$9.apply(Repl.scala:130)
        at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
        at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
        at scala.collection.immutable.List.foreach(List.scala:318)
        at scala.collection.TraversableLike$class.map(TraversableLike.scala:244)
        at scala.collection.AbstractTraversable.map(Traversable.scala:105)
        at ammonite.repl.Repl$.showException(Repl.scala:130)
        at ammonite.repl.Repl.loop$1(Repl.scala:94)
        at ammonite.repl.Repl.run(Repl.scala:103)
        at ammonite.repl.Main.run(Main.scala:74)

force pushing and updating works; no idea about the NPE. The line I'm looking at doesn't seem like it could cause that error...

@lihaoyi in Repl.scala:
      else source(f.getFileName) ++ error(":") ++ source(f.getLineNumber.toString)

f.getFileName could return null... and source(s) call seems to call s.some_method, which throws the NPE.

Here is a small reproducer:
@ val rdd = sc.parallelize(1 to 10)
rdd: org.apache.spark.rdd.RDD[Int] = ParallelCollectionRDD[1] at parallelize at cmd0.scala:1
@ rdd.map(_ * 10)

// Without handling the null case, the repl quits right away.  After handling null, we see this stack trace:

java.io.IOException: Class not found
  org.apache.xbean.asm5.ClassReader.a(??)  <--- f.getFileName returns null (I substituted null with ??)
  org.apache.xbean.asm5.ClassReader.<init>(??)
  org.apache.spark.util.ClosureCleaner$.getClassReader(ClosureCleaner.scala:40)
  org.apache.spark.util.ClosureCleaner$.getInnerClosureClasses(ClosureCleaner.scala:81)
  org.apache.spark.util.ClosureCleaner$.org$apache$spark$util$ClosureCleaner$$clean(ClosureCleaner.scala:187)
  org.apache.spark.util.ClosureCleaner$.clean(ClosureCleaner.scala:122)
  org.apache.spark.SparkContext.clean(SparkContext.scala:2055)
  org.apache.spark.rdd.RDD$$anonfun$map$1.apply(RDD.scala:324)
  org.apache.spark.rdd.RDD$$anonfun$map$1.apply(RDD.scala:323)
  org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:150)
  org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:111)
  org.apache.spark.rdd.RDD.withScope(RDD.scala:316)
  org.apache.spark.rdd.RDD.map(RDD.scala:323)
  ammonite.session.cmd1$.<init>(cmd1.scala:1)
  ammonite.session.cmd1$.<clinit>(cmd1.scala:-1)

Seems like you changed the behaviour a bit on master (i.e., you added ammonite.session prefix to all closures compiled in the repl), which is breaking this functionality (I fixed it now). 😅
Are you planning more changes on master?  It's hard for me to keep up with your pace of commits to master, especially with the merge conflicts!

There will be more change, but I will hold off until we merge in this change before making them =P I've already made you rebase too many times lol

(sorry)

No worries!  I realised my fix is still missing a few things.  Since you introduced a package (ammonite.session), I need to do some hacks to ensure the URLClassLoader in Spark's executors find them at the right path (/ammonite/session/)...  Gimme sometime to fix and verify this.
In the meantime, could you take a look at the gist and see why the test is failing?  I am not super familiar with ammonite's internals to debug with ease.
thanks,

I've verified a fix with the new ammonite.session prefix you added.  I'll wait for your inputs on the integration test gist before I push any changes to this branch!

I looked through your integration test script. It seems reasonable at first glance and could definitely go into our test suite. If we wanted we could bundle it into a convenient jar people could load, or we could just distribute it as a predef script.
I don't know why the transitive ivy resolution would have changed; the only thing that touched ivy resolution recently is https://github.com/lihaoyi/Ammonite/pull/395, and that should only affect local publishes. Perhaps it's a bug in the ivy-using code resulting in corrupt caches that is causing your resolution to work sometimes and not others? Such bugs suck, but they've happened before in Ammonite...
I'm not sure what the current state of the script is; you said it was failing but then you said you fixed it. Let's say I've checked out your PR into a local branch and downloaded your script-gist; is there anything broken right now that I should try to get working before you add your latest changes into this PR?

Thanks.  Let me rebase and push my changes along with the WIP integration predef script and update this pull request.

I have pushed my changes.  You can now clone this branch and check the test in ScriptTests.scala:'scala...

I'm getting this when I try to run that test locally
[info]      		error: String = java.lang.SecurityException: class "javax.servlet.FilterRegistration"'s signer information does not match signer information of other classes in the same package
[info]      		  java.lang.ClassLoader.checkCerts(ClassLoader.java:895)
[info]      		  java.lang.ClassLoader.preDefineClass(ClassLoader.java:665)
[info]      		  java.lang.ClassLoader.defineClass(ClassLoader.java:758)
[info]      		  java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
[info]      		  java.net.URLClassLoader.defineClass(URLClassLoader.java:455)
[info]      		  java.net.URLClassLoader.access$100(URLClassLoader.java:73)
[info]      		  java.net.URLClassLoader$1.run(URLClassLoader.java:367)
[info]      		  java.net.URLClassLoader$1.run(URLClassLoader.java:361)
[info]      		  java.security.AccessController.doPrivileged(Native Method)
[info]      		  java.net.URLClassLoader.findClass(URLClassLoader.java:360)
[info]      		  ammonite.repl.interp.SpecialClassLoader.ammonite$repl$interp$SpecialClassLoader$$super$findClass(ClassLoaders.scala:150)
[info]      		  ammonite.repl.interp.SpecialClassLoader$$anonfun$findClass$3.apply(ClassLoaders.scala:150)
[info]      		  ammonite.repl.interp.SpecialClassLoader$$anonfun$findClass$3.apply(ClassLoaders.scala:150)
[info]      		  scala.Option.getOrElse(Option.scala:121)
[info]      		  ammonite.repl.interp.SpecialClassLoader.findClass(ClassLoaders.scala:150)
[info]      		  java.lang.ClassLoader.loadClass(ClassLoader.java:424)
[info]      		  java.lang.ClassLoader.loadClass(ClassLoader.java:357)
[info]      		  org.spark-project.jetty.servlet.ServletContextHandler.<init>(ServletContextHandler.java:136)
[info]      		  org.spark-project.jetty.servlet.ServletContextHandler.<init>(ServletContextHandler.java:129)
[info]      		  org.spark-project.jetty.servlet.ServletContextHandler.<init>(ServletContextHandler.java:98)
[info]      		  org.apache.spark.ui.JettyUtils$.createServletHandler(JettyUtils.scala:126)
[info]      		  org.apache.spark.ui.JettyUtils$.createServletHandler(JettyUtils.scala:113)
[info]      		  org.apache.spark.ui.WebUI.attachPage(WebUI.scala:78)
[info]      		  org.apache.spark.ui.WebUI$$anonfun$attachTab$1.apply(WebUI.scala:62)
[info]      		  org.apache.spark.ui.WebUI$$anonfun$attachTab$1.apply(WebUI.scala:62)
[info]      		  scala.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59)
[info]      		  scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:48)
[info]      		  org.apache.spark.ui.WebUI.attachTab(WebUI.scala:62)
[info]      		  org.apache.spark.ui.SparkUI.initialize(SparkUI.scala:63)
[info]      		  org.apache.spark.ui.SparkUI.<init>(SparkUI.scala:76)
[info]      		  org.apache.spark.ui.SparkUI$.create(SparkUI.scala:195)
[info]      		  org.apache.spark.ui.SparkUI$.createLiveUI(SparkUI.scala:146)
[info]      		  org.apache.spark.SparkContext.<init>(SparkContext.scala:473)
[info]      		  ammonite.session.cmd10$.<init>(Main8.scala:114)
[info]      		  ammonite.session.cmd10$.<clinit>(Main8.scala:-1)

Is that what you're getting? Unfortunately I have no idea what's going on =/

Thanks for the report.  Nope it's not what I am getting, but I suspect the error is because you have multiple servlet-api jars in the classpath and one of them is getting picked up randomly (the one that has signing info).
https://issues.apache.org/jira/browse/SPARK-1693
I suspect we'll have to find out the dependency tree (how would you do that with load.ivy and manually exclude packages from the classpath (how to do this via sbt/load.ivy?)

But it's nice to note your stack trace, as it suggests the spark context is actually getting initialised (I couldn't even reach that point).
Which scala version are you using?  I am testing everything with 2.10.5.

I just ran sbt test-only --  with the path of that test, which should run on 2.11.8 by default I belieave

Lemme get a full console log and post it here

Odd it seems like a different failure this time
haoyi-mbp:Ammonite haoyi$ sbt "repl/test-only -- ammonite.repl.ScriptTests.exec.compilationBlocks.spark"
[info] Loading global plugins from /Users/haoyi/.sbt/0.13/plugins
[info] Updating {file:/Users/haoyi/.sbt/0.13/plugins/}global-plugins...
[info] Resolving org.fusesource.jansi#jansi;1.4 ...
[info] Done updating.
[info] Loading project definition from /Users/haoyi/Dropbox (Personal)/Workspace/Ammonite/project
[info] Updating {file:/Users/haoyi/Dropbox%20(Personal)/Workspace/Ammonite/project/}ammonite-build...
[info] Resolving org.fusesource.jansi#jansi;1.4 ...
[info] Done updating.
[info] Set current project to ammonite (in build file:/Users/haoyi/Dropbox%20(Personal)/Workspace/Ammonite/)
[info] Updating {file:/Users/haoyi/Dropbox%20(Personal)/Workspace/Ammonite/}ops...
[info] Updating {file:/Users/haoyi/Dropbox%20(Personal)/Workspace/Ammonite/}terminal...
[info] Resolving jline#jline;2.12.1 ...
[info] Done updating.
[info] Resolving jline#jline;2.12.1 ...
[info] Done updating.
[info] Updating {file:/Users/haoyi/Dropbox%20(Personal)/Workspace/Ammonite/}repl...
[info] Resolving jline#jline;2.12.1 ...
[info] Done updating.
[info] Compiling 1 Scala source to /Users/haoyi/Dropbox (Personal)/Workspace/Ammonite/terminal/target/scala-2.11/classes...
[info] Compiling 1 Scala source to /Users/haoyi/Dropbox (Personal)/Workspace/Ammonite/ops/target/scala-2.11/classes...
Waiting for lock on /Users/haoyi/.ivy2/.sbt.ivy.lock to be available...
Waiting for lock on /Users/haoyi/.ivy2/.sbt.ivy.lock to be available...
Waiting for lock on /Users/haoyi/.ivy2/.sbt.ivy.lock to be available...
[info] Compiling 7 Scala sources to /Users/haoyi/Dropbox (Personal)/Workspace/Ammonite/repl/target/scala-2.11/classes...
Waiting for lock on /Users/haoyi/.ivy2/.sbt.ivy.lock to be available...
[warn] /Users/haoyi/Dropbox (Personal)/Workspace/Ammonite/repl/src/main/scala/ammonite/repl/Main.scala:266: match may not be exhaustive.
[warn] It would fail on the following inputs: Exit(_), Skip
[warn]           main.runScript(path, passThroughArgs, kwargs.toMap) match{
[warn]                         ^
[warn] /Users/haoyi/Dropbox (Personal)/Workspace/Ammonite/repl/src/main/scala/ammonite/repl/Main.scala:263: match may not be exhaustive.
[warn] It would fail on the following input: (Some(_), Some(_))
[warn]       (fileToExecute, codeToExecute) match{
[warn]       ^
[warn] /Users/haoyi/Dropbox (Personal)/Workspace/Ammonite/repl/src/main/scala/ammonite/repl/interp/ClassLoaders.scala:28: match may not be exhaustive.
[warn] It would fail on the following input: ImportType(_)
[warn]       val stomped = data.importType match{
[warn]                          ^
[warn] /Users/haoyi/Dropbox (Personal)/Workspace/Ammonite/repl/src/main/scala/ammonite/repl/interp/Interpreter.scala:208: match may not be exhaustive.
[warn] It would fail on the following input: Exit(_)
[warn]         ev match {
[warn]         ^
[warn] /Users/haoyi/Dropbox (Personal)/Workspace/Ammonite/repl/src/main/scala/ammonite/repl/interp/Interpreter.scala:514: match may not be exhaustive.
[warn] It would fail on the following inputs: Exit(_), Skip
[warn]       processModule0(sourceCode, wrapperName, pkgName, prevImports) match{
[warn]                     ^
[warn] there were 10 deprecation warnings; re-run with -deprecation for details
[warn] there were two unchecked warnings; re-run with -unchecked for details
[warn] there was one feature warning; re-run with -feature for details
[warn] 8 warnings found
[info] Compiling 5 Scala sources to /Users/haoyi/Dropbox (Personal)/Workspace/Ammonite/repl/target/scala-2.11/classes...
[warn] /Users/haoyi/Dropbox (Personal)/Workspace/Ammonite/repl/src/main/scala/ammonite/repl/Main.scala:266: match may not be exhaustive.
[warn] It would fail on the following inputs: Exit(_), Skip
[warn]           main.runScript(path, passThroughArgs, kwargs.toMap) match{
[warn]                         ^
[warn] /Users/haoyi/Dropbox (Personal)/Workspace/Ammonite/repl/src/main/scala/ammonite/repl/Main.scala:263: match may not be exhaustive.
[warn] It would fail on the following input: (Some(_), Some(_))
[warn]       (fileToExecute, codeToExecute) match{
[warn]       ^
[warn] /Users/haoyi/Dropbox (Personal)/Workspace/Ammonite/repl/src/main/scala/ammonite/repl/interp/Interpreter.scala:208: match may not be exhaustive.
[warn] It would fail on the following input: Exit(_)
[warn]         ev match {
[warn]         ^
[warn] /Users/haoyi/Dropbox (Personal)/Workspace/Ammonite/repl/src/main/scala/ammonite/repl/interp/Interpreter.scala:514: match may not be exhaustive.
[warn] It would fail on the following inputs: Exit(_), Skip
[warn]       processModule0(sourceCode, wrapperName, pkgName, prevImports) match{
[warn]                     ^
[warn] there were 10 deprecation warnings; re-run with -deprecation for details
[warn] there were two unchecked warnings; re-run with -unchecked for details
[warn] 6 warnings found
[info] Compiling 5 Scala sources to /Users/haoyi/Dropbox (Personal)/Workspace/Ammonite/repl/target/scala-2.11/test-classes...
[warn] /Users/haoyi/Dropbox (Personal)/Workspace/Ammonite/repl/src/test/scala/ammonite/repl/TestRepl.scala:48: This catches all Throwables. If this is really intended, use `case e : Throwable` to clear this warning.
[warn]   ) catch{ case e =>
[warn]                 ^
[warn] there were 15 feature warnings; re-run with -feature for details
[warn] two warnings found
[info] Compiling 3 Scala sources to /Users/haoyi/Dropbox (Personal)/Workspace/Ammonite/repl/target/scala-2.11/test-classes...
[warn] there was one deprecation warning; re-run with -deprecation for details
[warn] one warning found
ScriptTests -- classOutputDir /var/folders/xw/4lw_p32d0pg88hyg5rfn7vqxqhkgj_/T/ammonite-tester-classes2784754008502526582
Begin spark test
Loading dep set 1
:: loading settings :: url = jar:file:/Users/haoyi/.ivy2/cache/org.apache.ivy/ivy/jars/ivy-2.4.0.jar!/org/apache/ivy/core/settings/ivysettings.xml
:: resolving dependencies :: org.apache.hadoop#hadoop-common-caller;working
	confs: [default]
	found org.apache.hadoop#hadoop-common;2.5.1 in central
	found org.apache.hadoop#hadoop-annotations;2.5.1 in central
	found jdiff#jdiff;1.0.9 in central
	found com.google.guava#guava;11.0.2 in central
	found com.google.code.findbugs#jsr305;1.3.9 in chain-resolver
	found commons-cli#commons-cli;1.2 in ivy-cache
	found org.apache.commons#commons-math3;3.1.1 in ivy-cache
	found xmlenc#xmlenc;0.52 in central
	found commons-httpclient#commons-httpclient;3.1 in central
	found commons-logging#commons-logging;1.1.3 in central
	found commons-codec#commons-codec;1.4 in chain-resolver
	found commons-io#commons-io;2.4 in chain-resolver
	found commons-net#commons-net;3.1 in central
	found commons-collections#commons-collections;3.2.1 in chain-resolver
	found javax.servlet#servlet-api;2.5 in central
	found org.mortbay.jetty#jetty;6.1.26 in central
	found org.mortbay.jetty#jetty-util;6.1.26 in central
	found com.sun.jersey#jersey-core;1.9 in central
	found com.sun.jersey#jersey-json;1.9 in central
	found org.codehaus.jettison#jettison;1.1 in central
	found com.sun.xml.bind#jaxb-impl;2.2.3-1 in central
	found javax.xml.bind#jaxb-api;2.2.2 in central
	found javax.xml.stream#stax-api;1.0-2 in central
	found javax.activation#activation;1.1 in central
	found org.codehaus.jackson#jackson-core-asl;1.9.13 in central
	found org.codehaus.jackson#jackson-mapper-asl;1.9.13 in central
	found org.codehaus.jackson#jackson-jaxrs;1.9.13 in central
	found org.codehaus.jackson#jackson-xc;1.9.13 in central
	found com.sun.jersey#jersey-server;1.9 in central
	found asm#asm;3.2 in central
	found log4j#log4j;1.2.17 in central
	found net.java.dev.jets3t#jets3t;0.9.0 in central
	found org.apache.httpcomponents#httpclient;4.2.5 in central
	found org.apache.httpcomponents#httpcore;4.2.5 in central
	found com.jamesmurty.utils#java-xmlbuilder;0.4 in central
	found commons-lang#commons-lang;2.6 in chain-resolver
	found commons-configuration#commons-configuration;1.6 in central
	found commons-digester#commons-digester;1.8 in central
	found commons-beanutils#commons-beanutils;1.7.0 in central
	found commons-beanutils#commons-beanutils-core;1.8.0 in ivy-cache
	found org.slf4j#slf4j-api;1.7.5 in central
	found org.apache.avro#avro;1.7.4 in central
	found com.thoughtworks.paranamer#paranamer;2.3 in central
	found org.xerial.snappy#snappy-java;<IP_ADDRESS> in central
	found org.apache.commons#commons-compress;1.4.1 in chain-resolver
	found org.tukaani#xz;1.0 in chain-resolver
	found com.google.protobuf#protobuf-java;2.5.0 in chain-resolver
	found org.apache.hadoop#hadoop-auth;2.5.1 in central
	found org.apache.directory.server#apacheds-kerberos-codec;2.0.0-M15 in central
	found org.apache.directory.server#apacheds-i18n;2.0.0-M15 in central
	found org.apache.directory.api#api-asn1-api;1.0.0-M20 in central
	found org.apache.directory.api#api-util;1.0.0-M20 in central
	found org.slf4j#slf4j-log4j12;1.7.5 in central
	found com.jcraft#jsch;0.1.42 in central
	found tomcat#jasper-compiler;5.5.23 in ivy-cache
	found tomcat#jasper-runtime;5.5.23 in ivy-cache
	found javax.servlet.jsp#jsp-api;2.1 in central
	found commons-el#commons-el;1.0 in central
	found org.apache.ant#ant;1.8.1 in central
	found org.apache.ant#ant-launcher;1.8.1 in central
:: resolving dependencies :: org.apache.hadoop#hadoop-auth-caller;working
	confs: [default]
	found org.apache.hadoop#hadoop-auth;2.5.1 in central
	found org.slf4j#slf4j-api;1.7.5 in central
	found commons-codec#commons-codec;1.4 in chain-resolver
	found org.apache.httpcomponents#httpclient;4.2.5 in central
	found org.apache.httpcomponents#httpcore;4.2.5 in central
	found commons-logging#commons-logging;1.1.3 in central
	found org.apache.directory.server#apacheds-kerberos-codec;2.0.0-M15 in central
	found org.apache.directory.server#apacheds-i18n;2.0.0-M15 in central
	found org.apache.directory.api#api-asn1-api;1.0.0-M20 in central
	found org.apache.directory.api#api-util;1.0.0-M20 in central
	found log4j#log4j;1.2.17 in central
	found org.slf4j#slf4j-log4j12;1.7.5 in central
	found org.apache.hadoop#hadoop-annotations;2.5.1 in central
	found jdiff#jdiff;1.0.9 in central
	found javax.servlet#servlet-api;2.5 in central
:: resolving dependencies :: commons-configuration#commons-configuration-caller;working
	confs: [default]
	found commons-configuration#commons-configuration;1.9 in central
	found commons-lang#commons-lang;2.6 in chain-resolver
	found commons-logging#commons-logging;1.1.1 in chain-resolver
	found javax.servlet#servlet-api;2.4 in central
	found xml-apis#xml-apis;1.0.b2 in central
	found commons-collections#commons-collections;3.2.1 in chain-resolver
	found commons-digester#commons-digester;1.8.1 in ivy-cache
	found commons-beanutils#commons-beanutils;1.8.3 in central
	found commons-codec#commons-codec;1.6 in chain-resolver
	found org.apache.commons#commons-jexl;2.1.1 in ivy-cache
	found org.apache.commons#commons-vfs2;2.0 in central
	found org.apache.maven.scm#maven-scm-api;1.4 in central
	found org.codehaus.plexus#plexus-utils;1.5.6 in central
	found org.apache.maven.scm#maven-scm-provider-svnexe;1.4 in central
	found org.apache.maven.scm#maven-scm-provider-svn-commons;1.4 in central
	found regexp#regexp;1.3 in central
	found commons-jxpath#commons-jxpath;1.3 in ivy-cache
	found xml-resolver#xml-resolver;1.2 in central
	found log4j#log4j;1.2.8 in central
:: resolving dependencies :: commons-collections#commons-collections-caller;working
	confs: [default]
	found commons-collections#commons-collections;3.2.1 in chain-resolver
:: resolving dependencies :: commons-lang#commons-lang-caller;working
	confs: [default]
	found commons-lang#commons-lang;2.6 in chain-resolver
Loading dep set 2
:: resolving dependencies :: org.apache.spark#spark-core_2.11-caller;working
	confs: [default]
	found org.apache.spark#spark-core_2.11;1.6.1 in ivy-cache
:: resolving dependencies :: org.apache.spark#spark-repl_2.11-caller;working
	confs: [default]
	found org.apache.spark#spark-repl_2.11;1.6.1 in ivy-cache
:: resolving dependencies :: org.apache.spark#spark-network-common_2.11-caller;working
	confs: [default]
	found org.apache.spark#spark-network-common_2.11;1.6.1 in ivy-cache
:: resolving dependencies :: org.apache.spark#spark-network-shuffle_2.11-caller;working
	confs: [default]
	found org.apache.spark#spark-network-shuffle_2.11;1.6.1 in ivy-cache
:: resolving dependencies :: com.fasterxml.jackson.core#jackson-core-caller;working
	confs: [default]
	found com.fasterxml.jackson.core#jackson-core;2.5.1 in central
:: resolving dependencies :: com.fasterxml.jackson.core#jackson-annotations-caller;working
	confs: [default]
	found com.fasterxml.jackson.core#jackson-annotations;2.3.1 in central
:: resolving dependencies :: com.fasterxml.jackson.core#jackson-databind-caller;working
	confs: [default]
	found com.fasterxml.jackson.core#jackson-databind;2.3.1 in central
	found com.fasterxml.jackson.core#jackson-annotations;2.3.0 in central
	found com.fasterxml.jackson.core#jackson-core;2.3.1 in central
:: resolving dependencies :: org.slf4j#slf4j-simple-caller;working
	confs: [default]
	found org.slf4j#slf4j-simple;1.7.12 in ivy-cache
:: resolving dependencies :: org.apache.avro#avro-caller;working
	confs: [default]
	found org.apache.avro#avro;1.7.1 in central
	found org.codehaus.jackson#jackson-core-asl;1.8.8 in central
	found org.codehaus.jackson#jackson-mapper-asl;1.8.8 in central
	found com.thoughtworks.paranamer#paranamer;2.3 in central
	found org.xerial.snappy#snappy-java;<IP_ADDRESS> in central
	found org.slf4j#slf4j-api;1.6.4 in chain-resolver
	found org.slf4j#slf4j-simple;1.6.4 in ivy-cache
:: resolving dependencies :: org.eclipse.jetty.aggregate#jetty-all-server-caller;working
	confs: [default]
	found org.eclipse.jetty.aggregate#jetty-all-server;8.1.14.v20131031 in central
	found org.eclipse.jetty.orbit#javax.servlet;3.0.0.v201112011016 in chain-resolver
	found org.eclipse.jetty.orbit#javax.security.auth.message;1.0.0.v201108011116 in central
	found org.eclipse.jetty.orbit#javax.mail.glassfish;1.4.1.v201005082020 in central
	found org.eclipse.jetty.orbit#javax.activation;1.1.0.v201105071233 in central
	found org.eclipse.jetty.orbit#javax.annotation;1.1.0.v201108011116 in central
	found org.eclipse.jetty#jetty-deploy;8.1.14.v20131031 in central
	found org.eclipse.jetty#jetty-webapp;8.1.14.v20131031 in central
	found org.eclipse.jetty#jetty-xml;8.1.14.v20131031 in central
	found org.eclipse.jetty#jetty-util;8.1.14.v20131031 in central
	found org.eclipse.jetty#jetty-servlet;8.1.14.v20131031 in central
	found org.eclipse.jetty#jetty-security;8.1.14.v20131031 in central
	found org.eclipse.jetty#jetty-server;8.1.14.v20131031 in central
	found org.eclipse.jetty#jetty-continuation;8.1.14.v20131031 in central
	found org.eclipse.jetty#jetty-http;8.1.14.v20131031 in central
	found org.eclipse.jetty#jetty-io;8.1.14.v20131031 in central
	found org.eclipse.jetty#jetty-websocket;8.1.14.v20131031 in central
	found org.eclipse.jetty#jetty-jmx;8.1.14.v20131031 in central
	found org.eclipse.jetty#jetty-plus;8.1.14.v20131031 in central
	found org.eclipse.jetty.orbit#javax.transaction;1.1.1.v201105210645 in central
	found org.eclipse.jetty#jetty-jndi;8.1.14.v20131031 in central
	found org.eclipse.jetty#jetty-ajp;8.1.14.v20131031 in central
	found org.eclipse.jetty#jetty-annotations;8.1.14.v20131031 in central
	found org.eclipse.jetty.orbit#org.objectweb.asm;3.1.0.v200803061910 in central
	found org.eclipse.jetty#jetty-jaspi;8.1.14.v20131031 in central
	found org.eclipse.jetty#jetty-rewrite;8.1.14.v20131031 in central
	found org.eclipse.jetty#jetty-client;8.1.14.v20131031 in central
	found org.eclipse.jetty#jetty-servlets;8.1.14.v20131031 in central
	found org.eclipse.jetty#jetty-nested;8.1.14.v20131031 in central
:: resolving dependencies :: javax.servlet#servlet-api-caller;working
	confs: [default]
	found javax.servlet#servlet-api;2.5 in central
Importing modules
Importing jetty
Importing sparkcontext
Defining simple http server
Starting spark test
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/Users/haoyi/.ivy2/cache/org.slf4j/slf4j-log4j12/jars/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/Users/haoyi/.ivy2/cache/org.slf4j/slf4j-simple/jars/slf4j-simple-1.7.12.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/Users/haoyi/.ivy2/cache/org.slf4j/slf4j-simple/jars/slf4j-simple-1.6.4.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
log4j:WARN No appenders could be found for logger (org.eclipse.jetty.util.log).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
[info] --------------------Starting Suite ammonite.repl.ScriptTests--------------------
[info] ammonite.repl.ScriptTests.exec.compilationBlocks.spark
[info]      		utest.AssertionError: assert{
[info]      		error: String = java.lang.NoClassDefFoundError: org/apache/commons/lang3/SystemUtils
[info]      		  org.apache.spark.util.Utils$.<init>(Utils.scala:1672)
[info]      		  org.apache.spark.util.Utils$.<clinit>(Utils.scala:-1)
[info]      		  org.apache.spark.SparkConf.<init>(SparkConf.scala:59)
[info]      		  org.apache.spark.SparkConf.<init>(SparkConf.scala:53)
[info]      		  ammonite.session.cmd10$.<init>(Main8.scala:108)
[info]      		  ammonite.session.cmd10$.<clinit>(Main8.scala:-1)
[info]      		java.lang.ClassNotFoundException: org.apache.commons.lang3.SystemUtils
[info]      		  java.net.URLClassLoader$1.run(URLClassLoader.java:372)
[info]      		  java.net.URLClassLoader$1.run(URLClassLoader.java:361)
[info]      		  java.security.AccessController.doPrivileged(Native Method)
[info]      		  java.net.URLClassLoader.findClass(URLClassLoader.java:360)
[info]      		  ammonite.repl.interp.SpecialClassLoader.ammonite$repl$interp$SpecialClassLoader$$super$findClass(ClassLoaders.scala:150)
[info]      		  ammonite.repl.interp.SpecialClassLoader$$anonfun$findClass$3.apply(ClassLoaders.scala:150)
[info]      		  ammonite.repl.interp.SpecialClassLoader$$anonfun$findClass$3.apply(ClassLoaders.scala:150)
[info]      		  scala.Option.getOrElse(Option.scala:121)
[info]      		  ammonite.repl.interp.SpecialClassLoader.findClass(ClassLoaders.scala:150)
[info]      		  java.lang.ClassLoader.loadClass(ClassLoader.java:424)
[info]      		  java.lang.ClassLoader.loadClass(ClassLoader.java:357)
[info]      		  org.apache.spark.util.Utils$.<init>(Utils.scala:1672)
[info]      		  org.apache.spark.util.Utils$.<clinit>(Utils.scala:-1)
[info]      		  org.apache.spark.SparkConf.<init>(SparkConf.scala:59)
[info]      		  org.apache.spark.SparkConf.<init>(SparkConf.scala:53)
[info]      		  ammonite.session.cmd10$.<init>(Main8.scala:108)
[info]      		  ammonite.session.cmd10$.<clinit>(Main8.scala:-1)
[info]      		warning: String =
[info]      		out: String =
[info]      		info: String =
[info] -----------------------------------Results-----------------------------------
[info] spark		Failure('utest.AssertionError: assert{
[info] error: String = java.lang.NoClassDefFoundError: org/apache/commons/lang3/SystemUtils
[info]   org.apache.spark.util.Utils$.<init>(Utils.scala:1672)
[info]   org.apache.spark.util.Utils$.<clinit>(Utils.scala:-1)
[info]   org.apache.spark.SparkConf.<init>(SparkConf.scala:59)
[info]   org.apache.spark.SparkConf.<init>(SparkConf.scala:53)
[info]   ammonite.session.cmd10$.<init>(Main8.scala:108)
[info]   ammonite.session.cmd10$.<clinit>(Main8.scala:-1)
[info] java.lang.ClassNotFoundException: org.apache.commons.lang3.SystemUtils
[info]   java.net.URLClassLoader$1.run(URLClassLoader.java:372)
[info]   java.net.URLClassLoader$1.run(URLClassLoader.java:361)
[info]   java.security.AccessController.doPrivileged(Native Method)
[info]   java.net.URLClassLoader.findClass(URLClassLoader.java:360)
[info]   ammonite.repl.interp.SpecialClassLoader.ammonite$repl$interp$SpecialClassLoader$$super$findClass(ClassLoaders.scala:150)
[info]   ammonite.repl.interp.SpecialClassLoader$$anonfun$findClass$3.apply(ClassLoaders.scala:150)
[info]   ammonite.repl.interp.SpecialClassLoader$$anonfun$findClass$3.apply(ClassLoaders.scala:150)
[info]   scala.Option.getOrElse(Option.scala:121)
[info]   ammonite.repl.interp.SpecialClassLoader.findClass(ClassLoaders.scala:150)
[info]   java.lang.ClassLoader.loadClass(ClassLoader.java:424)
[info]   java.lang.ClassLoader.loadClass(ClassLoader.java:357)
[info]   org.apache.spark.util.Utils$.<init>(Utils.scala:1672)
[info]   org.apache.spark.util.Utils$.<clinit>(Utils.scala:-1)
[info]   org.apache.spark.SparkConf.<init>(SparkConf.scala:59)
[info]   org.apache.spark.SparkConf.<init>(SparkConf.scala:53)
[info]   ammonite.session.cmd10$.<init>(Main8.scala:108)
[info]   ammonite.session.cmd10$.<clinit>(Main8.scala:-1)
[info] warning: String =
[info] out: String =
[info] info: String = ')
[info] Failures:
[info] ammonite.repl.ScriptTests.exec.compilationBlocks.spark
[info]      		utest.AssertionError: assert{
[info]      		error: String = java.lang.NoClassDefFoundError: org/apache/commons/lang3/SystemUtils
[info]      		  org.apache.spark.util.Utils$.<init>(Utils.scala:1672)
[info]      		  org.apache.spark.util.Utils$.<clinit>(Utils.scala:-1)
[info]      		  org.apache.spark.SparkConf.<init>(SparkConf.scala:59)
[info]      		  org.apache.spark.SparkConf.<init>(SparkConf.scala:53)
[info]      		  ammonite.session.cmd10$.<init>(Main8.scala:108)
[info]      		  ammonite.session.cmd10$.<clinit>(Main8.scala:-1)
[info]      		java.lang.ClassNotFoundException: org.apache.commons.lang3.SystemUtils
[info]      		  java.net.URLClassLoader$1.run(URLClassLoader.java:372)
[info]      		  java.net.URLClassLoader$1.run(URLClassLoader.java:361)
[info]      		  java.security.AccessController.doPrivileged(Native Method)
[info]      		  java.net.URLClassLoader.findClass(URLClassLoader.java:360)
[info]      		  ammonite.repl.interp.SpecialClassLoader.ammonite$repl$interp$SpecialClassLoader$$super$findClass(ClassLoaders.scala:150)
[info]      		  ammonite.repl.interp.SpecialClassLoader$$anonfun$findClass$3.apply(ClassLoaders.scala:150)
[info]      		  ammonite.repl.interp.SpecialClassLoader$$anonfun$findClass$3.apply(ClassLoaders.scala:150)
[info]      		  scala.Option.getOrElse(Option.scala:121)
[info]      		  ammonite.repl.interp.SpecialClassLoader.findClass(ClassLoaders.scala:150)
[info]      		  java.lang.ClassLoader.loadClass(ClassLoader.java:424)
[info]      		  java.lang.ClassLoader.loadClass(ClassLoader.java:357)
[info]      		  org.apache.spark.util.Utils$.<init>(Utils.scala:1672)
[info]      		  org.apache.spark.util.Utils$.<clinit>(Utils.scala:-1)
[info]      		  org.apache.spark.SparkConf.<init>(SparkConf.scala:59)
[info]      		  org.apache.spark.SparkConf.<init>(SparkConf.scala:53)
[info]      		  ammonite.session.cmd10$.<init>(Main8.scala:108)
[info]      		  ammonite.session.cmd10$.<clinit>(Main8.scala:-1)
[info]      		warning: String =
[info]      		out: String =
[info]      		info: String =
[info] utest.asserts.package$.assertError(package.scala:24)
[info] utest.asserts.package$$anonfun$getAssertionEntry$1.apply(package.scala:40)
[info] utest.asserts.package$$anonfun$getAssertionEntry$1.apply(package.scala:40)
[info] utest.asserts.Asserts$$anonfun$3$$anonfun$apply$1.apply$mcV$sp(Asserts.scala:102)
[info] utest.asserts.Asserts$$anonfun$3$$anonfun$apply$1.apply(Asserts.scala:100)
[info] utest.asserts.Asserts$$anonfun$3$$anonfun$apply$1.apply(Asserts.scala:100)
[info] scala.util.Try$.apply(Try.scala:192)
[info] utest.asserts.Asserts$$anonfun$3.apply(Asserts.scala:100)
[info] utest.asserts.Asserts$$anonfun$3.apply(Asserts.scala:100)
[info] scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234)
[info] scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234)
[info] scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33)
[info] scala.collection.mutable.WrappedArray.foreach(WrappedArray.scala:35)
[info] scala.collection.TraversableLike$class.map(TraversableLike.scala:234)
[info] scala.collection.AbstractTraversable.map(Traversable.scala:104)
[info] utest.asserts.Asserts$.assertImpl(Asserts.scala:100)
[info] ammonite.repl.TestRepl$$anonfun$session$2.apply(TestRepl.scala:105)
[info] ammonite.repl.TestRepl$$anonfun$session$2.apply(TestRepl.scala:64)
[info] scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:733)
[info] scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33)
[info] scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:186)
[info] scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:732)
[info] ammonite.repl.TestRepl.session(TestRepl.scala:64)
[info] ammonite.repl.ScriptTests$$anonfun$35$$anonfun$apply$2$$anonfun$apply$3$$anonfun$apply$5.apply(ScriptTests.scala:34)
[info] ammonite.repl.ScriptTests$$anonfun$35$$anonfun$apply$2$$anonfun$apply$3$$anonfun$apply$5.apply(ScriptTests.scala:11)
[info] Tests: 1
[info] Passed: 0
[info] Failed: 1
[error] Failed tests:
[error] 	ammonite.repl.ScriptTests
[error] (repl/test:testOnly) sbt.TestsFailedException: Tests unsuccessful
[error] Total time: 64 s, completed Jun 11, 2016 10:23:32 PM

Yeah, it's very weird.  I have no idea what's happening. :-(
In the absence of this, I could provide a pre-packaged jar that has the test.  Would that work?  I haven't pushed anything to maven remote repository before, is it easy for anyone to do it?
Lemme find out more and push a jar and then just invoke a "system" command or something instead of debugging this weirdness.  Thoughts?

Yeah a pre-packaged jar would work, or at least help us make progress in getting this working. It's plausible that our ivy subsystem (if you could call it that...) is misbehaving, and if we can get everything else working with a pre-packaged jar we could sidestep all that mess and come back and fix it later.
As for publishing, if you don't want to publish to a maven repository, a dropbox link that the test could curl would suffice for now. If we want to make it more robust we can do so later

Great, thanks @lihaoyi ... lemme work on that for now.  Hopefully will finish it this weekend. :)  Thanks for holding off master for this while!

@lihaoyi I made a project here: https://github.com/jvimal/spark-ammonite-test.  Cloning the project and running mvn exec:java -Dexec.mainClass="com.github.jvimal.AmmoniteHelper" -Dammonite.version=0.6.0-SNAPSHOT is a good unit test.
How could I integrate this?

I prefer not having a jar being curled because I'd like the unit test to pull in the latest ammonite library (as defined by ammonite.version in the pom.xml property).  That would be ideal, don't you think?

The easiest way I can see to integrate are

Turn the Maven project into a spark SBT subproject
Move your unit test into the integration testing project
Add a dependency on the assembly-ed spark jar from the integration test project, like how we have a dependency on the assembly-ed repl jar
Make Spark.scala load the single jar and go from there

That should avoid all the weird ivy problems we're seeing and make this whole jarring mostly seamless (except for the performance cost of jarring up all the spark stuff)

FWIW trying to do that myself gives me this error when I try to assembly my project
[error] (spark/*:assembly) deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:META-INF/native/osx/libjansi.jnilib
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:META-INF/native/osx/libjansi.jnilib
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:META-INF/native/windows32/jansi.dll
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:META-INF/native/windows32/jansi.dll
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:META-INF/native/windows64/jansi.dll
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:META-INF/native/windows64/jansi.dll
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/com.esotericsoftware.kryo/kryo/bundles/kryo-2.21.jar:com/esotericsoftware/minlog/Log$Logger.class
[error] /Users/haoyi/.ivy2/cache/com.esotericsoftware.minlog/minlog/jars/minlog-1.2.jar:com/esotericsoftware/minlog/Log$Logger.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/com.esotericsoftware.kryo/kryo/bundles/kryo-2.21.jar:com/esotericsoftware/minlog/Log.class
[error] /Users/haoyi/.ivy2/cache/com.esotericsoftware.minlog/minlog/jars/minlog-1.2.jar:com/esotericsoftware/minlog/Log.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/org.apache.spark/spark-network-common_2.10/jars/spark-network-common_2.10-1.6.1.jar:com/google/common/base/Absent.class
[error] /Users/haoyi/.ivy2/cache/com.google.guava/guava/bundles/guava-14.0.1.jar:com/google/common/base/Absent.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/org.apache.spark/spark-network-common_2.10/jars/spark-network-common_2.10-1.6.1.jar:com/google/common/base/Function.class
[error] /Users/haoyi/.ivy2/cache/com.google.guava/guava/bundles/guava-14.0.1.jar:com/google/common/base/Function.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/org.apache.spark/spark-network-common_2.10/jars/spark-network-common_2.10-1.6.1.jar:com/google/common/base/Optional$1$1.class
[error] /Users/haoyi/.ivy2/cache/com.google.guava/guava/bundles/guava-14.0.1.jar:com/google/common/base/Optional$1$1.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/org.apache.spark/spark-network-common_2.10/jars/spark-network-common_2.10-1.6.1.jar:com/google/common/base/Optional$1.class
[error] /Users/haoyi/.ivy2/cache/com.google.guava/guava/bundles/guava-14.0.1.jar:com/google/common/base/Optional$1.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/org.apache.spark/spark-network-common_2.10/jars/spark-network-common_2.10-1.6.1.jar:com/google/common/base/Optional.class
[error] /Users/haoyi/.ivy2/cache/com.google.guava/guava/bundles/guava-14.0.1.jar:com/google/common/base/Optional.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/org.apache.spark/spark-network-common_2.10/jars/spark-network-common_2.10-1.6.1.jar:com/google/common/base/Present.class
[error] /Users/haoyi/.ivy2/cache/com.google.guava/guava/bundles/guava-14.0.1.jar:com/google/common/base/Present.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/org.apache.spark/spark-network-common_2.10/jars/spark-network-common_2.10-1.6.1.jar:com/google/common/base/Supplier.class
[error] /Users/haoyi/.ivy2/cache/com.google.guava/guava/bundles/guava-14.0.1.jar:com/google/common/base/Supplier.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/XMLConstants.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/XMLConstants.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/namespace/NamespaceContext.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/namespace/NamespaceContext.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/namespace/QName.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/namespace/QName.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/EventFilter.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/EventFilter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/FactoryConfigurationError.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/FactoryConfigurationError.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/FactoryFinder$1.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/FactoryFinder$1.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/FactoryFinder$ClassLoaderFinder.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/FactoryFinder$ClassLoaderFinder.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/FactoryFinder$ClassLoaderFinderConcrete.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/FactoryFinder$ClassLoaderFinderConcrete.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/FactoryFinder.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/FactoryFinder.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/Location.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/Location.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/StreamFilter.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/StreamFilter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/XMLEventFactory.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/XMLEventFactory.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/XMLEventReader.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/XMLEventReader.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/XMLEventWriter.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/XMLEventWriter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/XMLInputFactory.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/XMLInputFactory.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/XMLOutputFactory.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/XMLOutputFactory.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/XMLReporter.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/XMLReporter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/XMLResolver.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/XMLResolver.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/XMLStreamConstants.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/XMLStreamConstants.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/XMLStreamException.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/XMLStreamException.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/XMLStreamReader.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/XMLStreamReader.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/XMLStreamWriter.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/XMLStreamWriter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/events/Attribute.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/events/Attribute.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/events/Characters.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/events/Characters.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/events/Comment.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/events/Comment.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/events/DTD.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/events/DTD.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/events/EndDocument.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/events/EndDocument.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/events/EndElement.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/events/EndElement.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/events/EntityDeclaration.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/events/EntityDeclaration.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/events/EntityReference.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/events/EntityReference.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/events/Namespace.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/events/Namespace.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/events/NotationDeclaration.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/events/NotationDeclaration.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/events/ProcessingInstruction.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/events/ProcessingInstruction.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/events/StartDocument.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/events/StartDocument.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/events/StartElement.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/events/StartElement.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/events/XMLEvent.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/events/XMLEvent.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/util/EventReaderDelegate.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/util/EventReaderDelegate.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/util/StreamReaderDelegate.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/util/StreamReaderDelegate.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/util/XMLEventAllocator.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/util/XMLEventAllocator.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/stax/stax-api/jars/stax-api-1.0.1.jar:javax/xml/stream/util/XMLEventConsumer.class
[error] /Users/haoyi/.ivy2/cache/javax.xml.bind/jsr173_api/jars/jsr173_api-1.0.jar:javax/xml/stream/util/XMLEventConsumer.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/BasicDynaBean.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/BasicDynaBean.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/BasicDynaClass.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/BasicDynaClass.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/BeanAccessLanguageException.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/BeanAccessLanguageException.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/BeanUtils.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/BeanUtils.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/BeanUtilsBean$1.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/BeanUtilsBean$1.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/BeanUtilsBean.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/BeanUtilsBean.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/ConstructorUtils.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/ConstructorUtils.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/ContextClassLoaderLocal.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/ContextClassLoaderLocal.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/ConversionException.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/ConversionException.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/ConvertUtils.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/ConvertUtils.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/ConvertUtilsBean.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/ConvertUtilsBean.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/Converter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/Converter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/ConvertingWrapDynaBean.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/ConvertingWrapDynaBean.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/DynaBean.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/DynaBean.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/DynaClass.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/DynaClass.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/DynaProperty.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/DynaProperty.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/JDBCDynaClass.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/JDBCDynaClass.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/LazyDynaBean.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/LazyDynaBean.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/LazyDynaClass.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/LazyDynaClass.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/LazyDynaMap.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/LazyDynaMap.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/MappedPropertyDescriptor.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/MappedPropertyDescriptor.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/MethodUtils$MethodDescriptor.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/MethodUtils$MethodDescriptor.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/MethodUtils.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/MethodUtils.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/MutableDynaClass.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/MutableDynaClass.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/NestedNullException.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/NestedNullException.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/PropertyUtils.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/PropertyUtils.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/PropertyUtilsBean.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/PropertyUtilsBean.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/ResultSetDynaClass.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/ResultSetDynaClass.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/ResultSetIterator.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/ResultSetIterator.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/RowSetDynaClass.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/RowSetDynaClass.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/WrapDynaBean.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/WrapDynaBean.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/WrapDynaClass.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/WrapDynaClass.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/AbstractArrayConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/AbstractArrayConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/BigDecimalConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/BigDecimalConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/BigIntegerConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/BigIntegerConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/BooleanArrayConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/BooleanArrayConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/BooleanConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/BooleanConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/ByteArrayConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/ByteArrayConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/ByteConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/ByteConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/CharacterArrayConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/CharacterArrayConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/CharacterConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/CharacterConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/ClassConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/ClassConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/DoubleArrayConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/DoubleArrayConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/DoubleConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/DoubleConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/FileConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/FileConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/FloatArrayConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/FloatArrayConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/FloatConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/FloatConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/IntegerArrayConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/IntegerArrayConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/IntegerConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/IntegerConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/LongArrayConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/LongArrayConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/LongConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/LongConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/ShortArrayConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/ShortArrayConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/ShortConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/ShortConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/SqlDateConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/SqlDateConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/SqlTimeConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/SqlTimeConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/SqlTimestampConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/SqlTimestampConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/StringArrayConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/StringArrayConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/StringConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/StringConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/converters/URLConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/converters/URLConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/BaseLocaleConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/BaseLocaleConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/LocaleBeanUtils$Descriptor.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/LocaleBeanUtils$Descriptor.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/LocaleBeanUtils.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/LocaleBeanUtils.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/LocaleBeanUtilsBean$1.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/LocaleBeanUtilsBean$1.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/LocaleBeanUtilsBean$Descriptor.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/LocaleBeanUtilsBean$Descriptor.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/LocaleBeanUtilsBean.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/LocaleBeanUtilsBean.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/LocaleConvertUtils.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/LocaleConvertUtils.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/LocaleConvertUtilsBean.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/LocaleConvertUtilsBean.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/LocaleConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/LocaleConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/converters/BigDecimalLocaleConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/converters/BigDecimalLocaleConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/converters/BigIntegerLocaleConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/converters/BigIntegerLocaleConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/converters/ByteLocaleConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/converters/ByteLocaleConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/converters/DateLocaleConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/converters/DateLocaleConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/converters/DecimalLocaleConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/converters/DecimalLocaleConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/converters/DoubleLocaleConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/converters/DoubleLocaleConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/converters/FloatLocaleConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/converters/FloatLocaleConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/converters/IntegerLocaleConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/converters/IntegerLocaleConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/converters/LongLocaleConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/converters/LongLocaleConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/converters/ShortLocaleConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/converters/ShortLocaleConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/converters/SqlDateLocaleConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/converters/SqlDateLocaleConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/converters/SqlTimeLocaleConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/converters/SqlTimeLocaleConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/converters/SqlTimestampLocaleConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/converters/SqlTimestampLocaleConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/beanutils/locale/converters/StringLocaleConverter.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/beanutils/locale/converters/StringLocaleConverter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-collections/commons-collections/jars/commons-collections-3.2.1.jar:org/apache/commons/collections/ArrayStack.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/collections/ArrayStack.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/collections/ArrayStack.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-collections/commons-collections/jars/commons-collections-3.2.1.jar:org/apache/commons/collections/Buffer.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/collections/Buffer.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/collections/Buffer.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-collections/commons-collections/jars/commons-collections-3.2.1.jar:org/apache/commons/collections/BufferUnderflowException.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/collections/BufferUnderflowException.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/collections/BufferUnderflowException.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-collections/commons-collections/jars/commons-collections-3.2.1.jar:org/apache/commons/collections/FastHashMap$1.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/collections/FastHashMap$1.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/collections/FastHashMap$1.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-collections/commons-collections/jars/commons-collections-3.2.1.jar:org/apache/commons/collections/FastHashMap$CollectionView$CollectionViewIterator.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/collections/FastHashMap$CollectionView$CollectionViewIterator.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/collections/FastHashMap$CollectionView$CollectionViewIterator.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-collections/commons-collections/jars/commons-collections-3.2.1.jar:org/apache/commons/collections/FastHashMap$CollectionView.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/collections/FastHashMap$CollectionView.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/collections/FastHashMap$CollectionView.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-collections/commons-collections/jars/commons-collections-3.2.1.jar:org/apache/commons/collections/FastHashMap$EntrySet.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/collections/FastHashMap$EntrySet.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/collections/FastHashMap$EntrySet.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-collections/commons-collections/jars/commons-collections-3.2.1.jar:org/apache/commons/collections/FastHashMap$KeySet.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/collections/FastHashMap$KeySet.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/collections/FastHashMap$KeySet.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-collections/commons-collections/jars/commons-collections-3.2.1.jar:org/apache/commons/collections/FastHashMap$Values.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/collections/FastHashMap$Values.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/collections/FastHashMap$Values.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/commons-collections/commons-collections/jars/commons-collections-3.2.1.jar:org/apache/commons/collections/FastHashMap.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils/jars/commons-beanutils-1.7.0.jar:org/apache/commons/collections/FastHashMap.class
[error] /Users/haoyi/.ivy2/cache/commons-beanutils/commons-beanutils-core/jars/commons-beanutils-core-1.8.0.jar:org/apache/commons/collections/FastHashMap.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/org.apache.hadoop/hadoop-yarn-common/jars/hadoop-yarn-common-2.2.0.jar:org/apache/hadoop/yarn/factories/package-info.class
[error] /Users/haoyi/.ivy2/cache/org.apache.hadoop/hadoop-yarn-api/jars/hadoop-yarn-api-2.2.0.jar:org/apache/hadoop/yarn/factories/package-info.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/org.apache.hadoop/hadoop-yarn-common/jars/hadoop-yarn-common-2.2.0.jar:org/apache/hadoop/yarn/factory/providers/package-info.class
[error] /Users/haoyi/.ivy2/cache/org.apache.hadoop/hadoop-yarn-api/jars/hadoop-yarn-api-2.2.0.jar:org/apache/hadoop/yarn/factory/providers/package-info.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/org.apache.hadoop/hadoop-yarn-common/jars/hadoop-yarn-common-2.2.0.jar:org/apache/hadoop/yarn/util/package-info.class
[error] /Users/haoyi/.ivy2/cache/org.apache.hadoop/hadoop-yarn-api/jars/hadoop-yarn-api-2.2.0.jar:org/apache/hadoop/yarn/util/package-info.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/org.apache.spark/spark-core_2.10/jars/spark-core_2.10-1.6.1.jar:org/apache/spark/unused/UnusedStubClass.class
[error] /Users/haoyi/.ivy2/cache/org.apache.spark/spark-launcher_2.10/jars/spark-launcher_2.10-1.6.1.jar:org/apache/spark/unused/UnusedStubClass.class
[error] /Users/haoyi/.ivy2/cache/org.spark-project.spark/unused/jars/unused-1.0.0.jar:org/apache/spark/unused/UnusedStubClass.class
[error] /Users/haoyi/.ivy2/cache/org.apache.spark/spark-network-common_2.10/jars/spark-network-common_2.10-1.6.1.jar:org/apache/spark/unused/UnusedStubClass.class
[error] /Users/haoyi/.ivy2/cache/org.apache.spark/spark-network-shuffle_2.10/jars/spark-network-shuffle_2.10-1.6.1.jar:org/apache/spark/unused/UnusedStubClass.class
[error] /Users/haoyi/.ivy2/cache/org.apache.spark/spark-unsafe_2.10/jars/spark-unsafe_2.10-1.6.1.jar:org/apache/spark/unused/UnusedStubClass.class
[error] /Users/haoyi/.ivy2/cache/org.apache.spark/spark-repl_2.10/jars/spark-repl_2.10-1.6.1.jar:org/apache/spark/unused/UnusedStubClass.class
[error] /Users/haoyi/.ivy2/cache/org.apache.spark/spark-sql_2.10/jars/spark-sql_2.10-1.6.1.jar:org/apache/spark/unused/UnusedStubClass.class
[error] /Users/haoyi/.ivy2/cache/org.apache.spark/spark-catalyst_2.10/jars/spark-catalyst_2.10-1.6.1.jar:org/apache/spark/unused/UnusedStubClass.class
[error] /Users/haoyi/.ivy2/cache/org.apache.spark/spark-bagel_2.10/jars/spark-bagel_2.10-1.6.1.jar:org/apache/spark/unused/UnusedStubClass.class
[error] /Users/haoyi/.ivy2/cache/org.apache.spark/spark-mllib_2.10/jars/spark-mllib_2.10-1.6.1.jar:org/apache/spark/unused/UnusedStubClass.class
[error] /Users/haoyi/.ivy2/cache/org.apache.spark/spark-streaming_2.10/jars/spark-streaming_2.10-1.6.1.jar:org/apache/spark/unused/UnusedStubClass.class
[error] /Users/haoyi/.ivy2/cache/org.apache.spark/spark-graphx_2.10/jars/spark-graphx_2.10-1.6.1.jar:org/apache/spark/unused/UnusedStubClass.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/org.fusesource.leveldbjni/leveldbjni-all/bundles/leveldbjni-all-1.8.jar:org/fusesource/hawtjni/runtime/Callback.class
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/hawtjni/runtime/Callback.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/hawtjni/runtime/Callback.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/org.fusesource.leveldbjni/leveldbjni-all/bundles/leveldbjni-all-1.8.jar:org/fusesource/hawtjni/runtime/JniClass.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/hawtjni/runtime/JniClass.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/org.fusesource.leveldbjni/leveldbjni-all/bundles/leveldbjni-all-1.8.jar:org/fusesource/hawtjni/runtime/Library.class
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/hawtjni/runtime/Library.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/hawtjni/runtime/Library.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/org.fusesource.leveldbjni/leveldbjni-all/bundles/leveldbjni-all-1.8.jar:org/fusesource/hawtjni/runtime/MethodFlag.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/hawtjni/runtime/MethodFlag.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/org.fusesource.leveldbjni/leveldbjni-all/bundles/leveldbjni-all-1.8.jar:org/fusesource/hawtjni/runtime/NativeStats.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/hawtjni/runtime/NativeStats.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/Ansi$1.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/Ansi$1.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/Ansi$2.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/Ansi$2.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/Ansi$Attribute.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/Ansi$Attribute.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/Ansi$Color.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/Ansi$Color.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/Ansi$Erase.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/Ansi$Erase.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/Ansi$NoAnsi.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/Ansi$NoAnsi.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/Ansi.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/Ansi.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/AnsiConsole$1.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/AnsiConsole$1.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/AnsiConsole.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/AnsiConsole.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/AnsiOutputStream.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/AnsiOutputStream.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/AnsiRenderWriter.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/AnsiRenderWriter.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/AnsiRenderer$Code.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/AnsiRenderer$Code.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/AnsiRenderer.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/AnsiRenderer.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/AnsiString.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/AnsiString.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/WindowsAnsiOutputStream.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/WindowsAnsiOutputStream.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/internal/CLibrary.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/internal/CLibrary.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/internal/Kernel32$CONSOLE_SCREEN_BUFFER_INFO.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/internal/Kernel32$CONSOLE_SCREEN_BUFFER_INFO.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/internal/Kernel32$COORD.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/internal/Kernel32$COORD.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/internal/Kernel32$SMALL_RECT.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/internal/Kernel32$SMALL_RECT.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/internal/Kernel32.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/internal/Kernel32.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.sbt/boot/scala-2.10.5/lib/jline.jar:org/fusesource/jansi/internal/WindowsSupport.class
[error] /Users/haoyi/.ivy2/cache/org.fusesource.jansi/jansi/jars/jansi-1.4.jar:org/fusesource/jansi/internal/WindowsSupport.class
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/org.eclipse.jetty.orbit/javax.servlet/orbits/javax.servlet-3.0.0.v201112011016.jar:plugin.properties
[error] /Users/haoyi/.ivy2/cache/org.eclipse.jetty.orbit/javax.security.auth.message/orbits/javax.security.auth.message-1.0.0.v201108011116.jar:plugin.properties
[error] /Users/haoyi/.ivy2/cache/org.eclipse.jetty.orbit/javax.mail.glassfish/orbits/javax.mail.glassfish-1.4.1.v201005082020.jar:plugin.properties
[error] /Users/haoyi/.ivy2/cache/org.eclipse.jetty.orbit/javax.activation/orbits/javax.activation-1.1.0.v201105071233.jar:plugin.properties
[error] /Users/haoyi/.ivy2/cache/org.eclipse.jetty.orbit/javax.annotation/orbits/javax.annotation-1.1.0.v201108011116.jar:plugin.properties
[error] deduplicate: different file contents found in the following:
[error] /Users/haoyi/.ivy2/cache/junit/junit/jars/junit-3.8.1.jar:stylesheet.css
[error] /Users/haoyi/.ivy2/cache/net.sourceforge.f2j/arpack_combined_all/jars/arpack_combined_all-0.1-javadoc.jar:stylesheet.css
[error] Total time: 534 s, completed Jun 12, 2016 8:30:22 AM

With these changes
haoyi-mbp:Ammonite haoyi$ git --no-pager diff 389
diff --git a/build.sbt b/build.sbt
index 6ec1daa..169f907 100644
--- a/build.sbt
+++ b/build.sbt
@@ -166,6 +166,7 @@ lazy val shell = project

 val integrationTasks = Seq(
   assembly in repl,
+  assembly in spark,
   packageBin in (shell, Compile)
 )
 lazy val integration = project
@@ -202,6 +203,17 @@ lazy val sshd = project
       )
   )

+lazy val spark = project
+  .settings(
+    libraryDependencies ++= Seq(
+      "org.testng" % "testng" % "6.1.1",
+      "org.apache.spark" %% "spark-core" % "1.6.1",
+      "org.apache.spark" %% "spark-repl" % "1.6.1",
+      "org.apache.spark" %% "spark-sql" % "1.6.1",
+      "org.eclipse.jetty.aggregate" % "jetty-all-server" % "8.1.14.v20131031"
+    )
+  )
+
 lazy val readme = ScalatexReadme(
   projectId = "readme",
   wd = file(""),
diff --git a/integration/src/test/resources/ammonite/integration/projects/Spark.scala b/integration/src/test/resources/ammonite/integration/projects/Spark.scala
new file mode 100644
index 0000000..0e8ccc9
--- /dev/null
+++ b/integration/src/test/resources/ammonite/integration/projects/Spark.scala
@@ -0,0 +1,96 @@
+println("Begin spark test")
+
+import ammonite.ops._
+println("Loading dep set 1")
+
+println("Importing modules")
+import java.io.File
+import java.net.InetAddress
+println("Importing jetty")
+import org.eclipse.jetty.server.Server
+import org.eclipse.jetty.server.bio.SocketConnector
+import org.eclipse.jetty.server.handler.{DefaultHandler, HandlerList, ResourceHandler}
+import org.eclipse.jetty.util.thread.QueuedThreadPool
+println("Importing sparkcontext")
+import org.apache.spark.{SparkConf, SparkContext}
+println("Defining simple http server")
+class SimpleHttpServer(root: String) {
+  private var server: Server = null
+  private var port = 0
+
+  start()
+
+  def start() {
+    if (server != null) {
+      throw new Exception("Server is already started")
+    } else {
+      val (actualServer, actualPort) = doStart()
+      server = actualServer
+      port = actualPort
+    }
+  }
+
+  /**
+    * Actually start the HTTP server and return the server and port.
+    */
+  private def doStart(): (Server, Int) = {
+    val server = new Server()
+
+    val connector = new SocketConnector
+    connector.setMaxIdleTime(60 * 1000)
+    connector.setSoLingerTime(-1)
+    connector.setPort(0)
+    server.addConnector(connector)
+
+    val threadPool = new QueuedThreadPool
+    threadPool.setDaemon(true)
+    server.setThreadPool(threadPool)
+    val resHandler = new ResourceHandler
+    resHandler.setResourceBase(new File(root).getAbsolutePath)
+
+    val handlerList = new HandlerList
+    handlerList.setHandlers(Array(resHandler, new DefaultHandler))
+
+    server.setHandler(handlerList)
+
+    server.start()
+    val actualPort = server.getConnectors()(0).getLocalPort
+
+    (server, actualPort)
+  }
+
+  def stop() {
+    if (server == null) {
+      throw new Exception("Server is already stopped")
+    } else {
+      server.stop()
+      server = null
+    }
+  }
+
+  /**
+    * Get the URI of this HTTP server (http://host:port or https://host:port)
+    */
+  def uri: String = {
+    if (server == null) {
+      throw new Exception("Server is not started")
+    } else {
+      val host = InetAddress.getLocalHost().getHostName()
+      s"http://${host}:$port"
+    }
+  }
+}
+@
+println("Starting spark test")
+val server = new SimpleHttpServer(classOutputDir.toString)
+val conf = new SparkConf()
+  .setAppName("test")
+  .setMaster("local[*]")
+  .set("spark.repl.class.uri", server.uri)
+  // To allow retries for this test.
+  .set("spark.driver.allowMultipleContexts", "true")
+val sc = new SparkContext(conf)
+val result = sc.parallelize(1 to 5).map(_ * 10).collect
+@
+server.stop
+println(s"Spark result: $result")
diff --git a/integration/src/test/scala/ammonite/integration/BasicTests.scala b/integration/src/test/scala/ammonite/integration/BasicTests.scala
index acd9ab9..2f42c24 100644
--- a/integration/src/test/scala/ammonite/integration/BasicTests.scala
+++ b/integration/src/test/scala/ammonite/integration/BasicTests.scala
@@ -64,6 +64,12 @@ object BasicTests extends TestSuite{
         assert(evaled.out.string.contains("Hello bar"))
       }
     }
+    'spark- {
+      if (scalaVersion.startsWith("2.11.") && javaVersion.startsWith("1.8.")){
+        val evaled = exec('projects/"Spark.scala")
+        assert(evaled.out.string.contains("Spark result"))
+      }
+    }
     'args{
       'full{
         val evaled = exec('basic/"Args.scala", "3", "Moo", (cwd/'omg/'moo).toString)

FWIW travis is failing with the same SecurityException I'm seeing locally, and your new classOutputDir unit test is failing too

@jvimal I went ahead and merged https://github.com/lihaoyi/Ammonite/pull/401 just to unblock further work I have planned. That will undoubtably cause merge conflicts for you when you try to rebase.
However, most of the work gone into this PR seems to be getting the Spark integration/unit test written (done) and working in CI (WIP). That work should not conflict much at all with other working happening in the repl/ codebase proper. The changes to the actual repl/ code are relatively few and should be easy to manually apply.
For now, let me propose an alternate workflow: don't bother rebasing, and keep working on the branch you are on right now. Once CI is passing on your branch/PR, and your Spark test is running, it should be relatively straightforward to manually integrate the code into the main codebase. If you are tired of chasing rebases (and I wouldn't blame you 😛 ) at that point I'll do the final merge after your branch is in a relatively good shape.

Hi @lihaoyi sorry for the late reply.  I tried to get this working locally but with little success.  I am thinking -- could we merge this with the simple unit tests I have now?  I expect this to take a lot longer so I can work on it over time.
If travis CI has a workflow to clone and run mvn test on a remote repository, then we just have to do this:

Clone https://github.com/jvimal/spark-ammonite-test/
run mvn test -Dammonite.version=$(the version you are testing)

Somehow the integration into one place doesn't seem to be working and I am lost for now.

Hey sorry for taking long to get back to this!
I'm gonna draw a line and say that an integration test is necessary to merge it into master. If we can't get it working under the most idealized, controlled environment, there's no way we can promise people that it will work "in the wild" when they try to use it.
This is especially the case given that the integration test you wrote explicitly does not work, whether in CI or on my machine, meaning that anyone else who tries to do the same "obvious" thing will find themselves facing the same issues we're seeing here, and be just as confused.
If you're stumped, and I'm stumped, I'll close the PR for now and we can re-visit/re-open it when we have more ideas and energy to try and beat through it =)

Now that we're using Coursier to resolve dependencies I'm going to take another crack at getting the integration test working

As of my latest dev branch, using @alexarchambault's Coursier, a modernized version of this test case now works out of the box without needing changes to Ammonite's core

import $ivy.{
  `org.apache.hadoop:hadoop-common:2.5.1`,
  `org.apache.hadoop:hadoop-auth:2.5.1`,
  `commons-configuration:commons-configuration:1.9`,
  `commons-collections:commons-collections:3.2.1`,
  `commons-lang:commons-lang:2.6`,
  `org.apache.spark::spark-core:2.1.1`,
  `org.apache.spark::spark-repl:2.1.1`,
  `org.apache.spark::spark-network-common:2.1.1`,
  `org.apache.spark::spark-network-shuffle:2.1.1`,
  `org.eclipse.jetty.aggregate:jetty-all-server:8.1.14.v20131031`
}

import java.net.InetAddress
import org.eclipse.jetty.server.Server
import org.eclipse.jetty.server.bio.SocketConnector
import org.eclipse.jetty.server.handler.{DefaultHandler, HandlerList, ResourceHandler}
import org.eclipse.jetty.util.thread.QueuedThreadPool
import org.eclipse.jetty.util.resource.Resource
import org.apache.spark.{SparkConf, SparkContext}

val server = {
  val server = new Server()

  val connector = new SocketConnector
  connector.setMaxIdleTime(60 * 1000)
  connector.setSoLingerTime(-1)
  connector.setPort(0)
  server.addConnector(connector)

  val threadPool = new QueuedThreadPool
  threadPool.setDaemon(true)
  server.setThreadPool(threadPool)

  val resHandler = new ResourceHandler
  resHandler.setBaseResource(Resource.newClassPathResource("/"))

  val handlerList = new HandlerList
  handlerList.setHandlers(Array(resHandler, new DefaultHandler))

  server.setHandler(handlerList)

  server.start()

  server
}

val port = server.getConnectors()(0).getLocalPort

println("Starting spark test")

val conf = new SparkConf()
  .setAppName("test")
  .setMaster("local[*]")
  .set(
    "spark.repl.class.uri",
    s"http://${InetAddress.getLocalHost().getHostName()}:$port"
  )
  // To allow retries for this test.
  .set("spark.driver.allowMultipleContexts", "true")
val sc = new SparkContext(conf)
val result = sc.parallelize(1 to 5).map(_ * 10).collect

server.stop()
println(s"Spark result: ${result.toList}")
assert(result.toList == List(10, 20, 30, 40, 50))

lihaoyi Ammonite$ amm/target/amm foo.sc
Compiling /Users/lihaoyi/Dropbox/Github/Ammonite/interpBridge.sc
Compiling /Users/lihaoyi/Dropbox/Github/Ammonite/foo.sc
log4j:WARN No appenders could be found for logger (org.eclipse.jetty.util.log).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
Starting spark test
Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties
17/05/19 23:22:23 INFO SparkContext: Running Spark version 2.1.1
17/05/19 23:22:23 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
17/05/19 23:22:28 INFO SecurityManager: Changing view acls to: lihaoyi
17/05/19 23:22:28 INFO SecurityManager: Changing modify acls to: lihaoyi
17/05/19 23:22:28 INFO SecurityManager: Changing view acls groups to:
17/05/19 23:22:28 INFO SecurityManager: Changing modify acls groups to:
17/05/19 23:22:28 INFO SecurityManager: SecurityManager: authentication disabled; ui acls disabled; users  with view permissions: Set(lihaoyi); groups with view permissions: Set(); users  with modify permissions: Set(lihaoyi); groups with modify permissions: Set()
17/05/19 23:22:28 INFO Utils: Successfully started service 'sparkDriver' on port 50219.
17/05/19 23:22:28 INFO SparkEnv: Registering MapOutputTracker
17/05/19 23:22:28 INFO SparkEnv: Registering BlockManagerMaster