diff options
-rw-r--r-- | core/src/main/scala/mill/modules/Jvm.scala | 8 | ||||
-rw-r--r-- | scalaplugin/src/main/scala/mill/scalaplugin/ScalaModule.scala | 4 |
2 files changed, 10 insertions, 2 deletions
diff --git a/core/src/main/scala/mill/modules/Jvm.scala b/core/src/main/scala/mill/modules/Jvm.scala index ddc8b427..84e75510 100644 --- a/core/src/main/scala/mill/modules/Jvm.scala +++ b/core/src/main/scala/mill/modules/Jvm.scala @@ -27,6 +27,14 @@ object Jvm { } allJars } + + def interactiveSubprocess(mainClass: String, + classPath: Seq[Path], + options: Seq[String] = Seq.empty): Unit = { + import ammonite.ops.ImplicitWd._ + %("java", "-cp", classPath.mkString(":"), mainClass, options) + } + def subprocess(mainClass: String, classPath: Seq[Path], jvmOptions: Seq[String] = Seq.empty, diff --git a/scalaplugin/src/main/scala/mill/scalaplugin/ScalaModule.scala b/scalaplugin/src/main/scala/mill/scalaplugin/ScalaModule.scala index 802a881a..b193a8c3 100644 --- a/scalaplugin/src/main/scala/mill/scalaplugin/ScalaModule.scala +++ b/scalaplugin/src/main/scala/mill/scalaplugin/ScalaModule.scala @@ -11,7 +11,7 @@ import mill.define.Task import mill.define.Task.{Module, TaskModule} import mill.eval.{PathRef, Result} import mill.modules.Jvm -import mill.modules.Jvm.{createAssembly, createJar, subprocess} +import mill.modules.Jvm.{createAssembly, createJar, interactiveSubprocess, subprocess} import mill.util.Ctx import sbt.internal.inc._ import sbt.internal.util.{ConsoleOut, MainAppender} @@ -389,7 +389,7 @@ trait ScalaModule extends Module with TaskModule{ outer => } def console() = T.command{ - subprocess( + interactiveSubprocess( mainClass = "scala.tools.nsc.MainGenericRunner", classPath = externalCompileDepClasspath().map(_.path) :+ compile().classes.path, options = Seq("-usejavacp") |