From 33a217ae6a19ff5597e4e22e180b6986933514f1 Mon Sep 17 00:00:00 2001 From: eugene yokota Date: Sat, 11 Jul 2026 16:04:01 -0400 Subject: [PATCH] [2.0.x] fix: Fixes shutdownall (#9435) **Problem** sbt shutdown all requires --server. **Solution** Fix it so it doesn't need extra flag. --- sbt | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/sbt b/sbt index 57ef1851f..fe738e1c8 100755 --- a/sbt +++ b/sbt @@ -558,6 +558,14 @@ checkWorkingDirectory() { fi } +runShutdownAll() { + local sbt_processes=( $(jps -v | grep sbt-launch | cut -f1 -d ' ') ) + for procId in "${sbt_processes[@]}"; do + kill -9 $procId + done + echoerr "shutdown ${#sbt_processes[@]} sbt processes" +} + run() { # Copy preloaded repo to user's preloaded directory syncPreloaded @@ -594,12 +602,6 @@ run() { echoerr "" echoerr "[info] sbt runner (sbt-the-shell-script) is a runner to run any declared version of sbt." echoerr "[info] Actual version of the sbt is declared using project/build.properties for each build." - elif [[ $shutdownall ]]; then - local sbt_processes=( $(jps -v | grep sbt-launch | cut -f1 -d ' ') ) - for procId in "${sbt_processes[@]}"; do - kill -9 $procId - done - echoerr "shutdown ${#sbt_processes[@]} sbt processes" else checkWorkingDirectory # run sbt @@ -962,6 +964,11 @@ if [[ $print_sbt_script_version ]]; then exit 0 fi +if [[ $shutdownall ]]; then + runShutdownAll + exit 0 +fi + java_version="$(jdk_version)" vlog "[process_args] java_version = '$java_version'" checkJava17ForSbt2