diff --git a/main-command/src/main/scala/sbt/internal/client/NetworkClient.scala b/main-command/src/main/scala/sbt/internal/client/NetworkClient.scala index 9ca556421..d6b376dac 100644 --- a/main-command/src/main/scala/sbt/internal/client/NetworkClient.scala +++ b/main-command/src/main/scala/sbt/internal/client/NetworkClient.scala @@ -337,8 +337,13 @@ class NetworkClient( List(DashDashDetachStdio, DashDashServer) } + // https://github.com/sbt/sbt/issues/6271 + val nohup = + if (Util.isEmacs && !Util.isWindows) List("nohup") + else Nil + val processBuilder = - new ProcessBuilder(cmd: _*) + new ProcessBuilder((nohup ++ cmd): _*) .directory(arguments.baseDirectory) .redirectInput(Redirect.PIPE) processBuilder.environment.put(Terminal.TERMINAL_PROPS, props)