after call to, jvm won't exit


  • Type: Defect Defect
  • Status: Closed Closed
  • Priority: Major Major
  • Resolution: Duplicate
  • Affects Version/s: Release 1.3, Release 1.4
  • Fix Version/s: None
  • Component/s: None
  • Labels:
  • Environment:
    Reproduced on Ubuntu using Sun Java 1.6, OpenJDK 1.6, and Sun Java 1.7


Create the following four-line file, shell_example.clj:

;; simple example of call to sh that causes jvm to hang after print
(require '[ :as shell])
(shell/sh "ls")
(println "jvm should exit after this, but it doesn't")

java -jar clojure-1.3.0.jar shell_example.clj

After the message is printed, the jvm doesn't quit. It just sits there. I have to hit Ctrl-C to force the jvm to quit.

This happens on 1.3 and the most recent code in github as of 3/26/2012. I imagine the jvm is waiting for a thread that hasn't terminated, but the code in the sh function doesn't look like it's doing anything obviously wrong. I'm too much of a newcomer to Clojure to dig any deeper.

My workaround right now is to do (System/exit 0) to force the jvm to quit.

Thank you for your work on Clojure, it's simply an amazing language.


Alex Miller made changes -
Field Original Value New Value
Status Open [ 1 ] Closed [ 6 ]
Resolution Duplicate [ 3 ]


Vote (0)
Watch (1)


  • Created: