diff options
Diffstat (limited to 'scalalib/src/main/scala')
-rw-r--r-- | scalalib/src/main/scala/mill/scalalib/Lib.scala | 2 | ||||
-rw-r--r-- | scalalib/src/main/scala/mill/scalalib/Module.scala | 12 | ||||
-rw-r--r-- | scalalib/src/main/scala/mill/scalalib/TestRunner.scala | 5 |
3 files changed, 10 insertions, 9 deletions
diff --git a/scalalib/src/main/scala/mill/scalalib/Lib.scala b/scalalib/src/main/scala/mill/scalalib/Lib.scala index 55c28a06..098da786 100644 --- a/scalalib/src/main/scala/mill/scalalib/Lib.scala +++ b/scalalib/src/main/scala/mill/scalalib/Lib.scala @@ -206,7 +206,7 @@ object Lib{ .unsafePerformSync .flatMap(_.toOption) - localArtifacts.map(p => PathRef(Path(p), quick = true)) + localArtifacts.map(p => PathRef(Path(p), quick = true)).filter(_.path.ext == "jar") } } def scalaCompilerIvyDeps(scalaVersion: String) = Seq( diff --git a/scalalib/src/main/scala/mill/scalalib/Module.scala b/scalalib/src/main/scala/mill/scalalib/Module.scala index 1ff4c240..c444aeaa 100644 --- a/scalalib/src/main/scala/mill/scalalib/Module.scala +++ b/scalalib/src/main/scala/mill/scalalib/Module.scala @@ -36,7 +36,7 @@ trait TestModule extends Module with TaskModule { jvmOptions = forkArgs(), options = Seq( testFramework(), - (runDepClasspath().map(_.path) :+ compile().classes.path).mkString(" "), + (runDepClasspath().map(_.path) :+ compile().classes.path).distinct.mkString(" "), Seq(compile().classes.path).mkString(" "), args.mkString(" "), outputPath.toString @@ -210,12 +210,14 @@ trait Module extends mill.Module with TaskModule { outer => ) } def assemblyClasspath = T{ - (runDepClasspath().filter(_.path.ext != "pom") ++ - Seq(resources(), compile().classes)).map(_.path).filter(exists) + runDepClasspath() ++ Seq(resources(), compile().classes) } def assembly = T{ - createAssembly(assemblyClasspath(), prependShellScript = prependShellScript()) + createAssembly( + assemblyClasspath().map(_.path).filter(exists), + prependShellScript = prependShellScript() + ) } def classpath = T{ Seq(resources(), compile().classes) } @@ -263,7 +265,7 @@ trait Module extends mill.Module with TaskModule { outer => def console() = T.command{ interactiveSubprocess( mainClass = "scala.tools.nsc.MainGenericRunner", - classPath = externalCompileDepClasspath().map(_.path) :+ compile().classes.path, + classPath = assemblyClasspath().map(_.path), options = Seq("-usejavacp") ) } diff --git a/scalalib/src/main/scala/mill/scalalib/TestRunner.scala b/scalalib/src/main/scala/mill/scalalib/TestRunner.scala index d92a9deb..0a3df35e 100644 --- a/scalalib/src/main/scala/mill/scalalib/TestRunner.scala +++ b/scalalib/src/main/scala/mill/scalalib/TestRunner.scala @@ -62,6 +62,7 @@ object TestRunner { args: Seq[String]) (implicit ctx: LogCtx): (String, Seq[Result]) = { val outerClassLoader = getClass.getClassLoader + pprint.log(entireClasspath.map(_.toIO.toURI.toURL).toArray, height=9999) val cl = new URLClassLoader( entireClasspath.map(_.toIO.toURI.toURL).toArray, ClassLoader.getSystemClassLoader().getParent()){ @@ -84,9 +85,7 @@ object TestRunner { val tasks = runner.tasks( for((cls, fingerprint) <- testClasses.toArray) - yield { - new TaskDef(cls.getName.stripSuffix("$"), fingerprint, true, Array()) - } + yield new TaskDef(cls.getName.stripSuffix("$"), fingerprint, true, Array()) ) val events = mutable.Buffer.empty[Event] for(t <- tasks){ |