gancho de desligamento não dispara ao executar com "lein run"
Eu tenho o seguinte código:
(ns test-hook.core)
(defn -main []
(.addShutdownHook (Runtime/getRuntime) (Thread. #(println "shutdown")))
(println "start")
(doseq [i (range 1 6)]
(Thread/sleep 1000)
(println i)))
e o seguinte projeto.clj
(defproject test-hook "1.0.0-SNAPSHOT"
:aot :all
:main test-hook.core
:description "FIXME: write description"
:dependencies [[org.clojure/clojure "1.2.0"]])
quando eu o executo com "lein run" o gancho de desligamento só é executado na execução normal do programa, não quando estiver recebendo o SIGINT (Ctrl-C)
o mesmo código, quando executado fora de lein, executa com sucesso o gancho de encerramento, mesmo quando recebe SIGINT.
Como posso ter o gancho de desligamento executado ao executar a partir de lein e abortar com Ctrl-C?