Сегодня я заметил что-то странное. Когда я не «в» проект (то есть, оболочка не находится в директории по Clojure проекта), я могу использовать exit
для выхода из REPL:Почему `(exit)` не всегда доступен в REPL?
shell$ lein repl
REPL started; server listening on localhost port 43712
user=> (+ 3 4)
7
user=> (exit)
shell$ echo '<span>not in <s>kansas</s>clojure anymore</span>'
Когда я «в» проект (то есть, оболочка находится в директории по Clojure проекта), я не могу использовать exit
:
shell$ cd my_clojure_project
shell$ lein repl
REPL started; server listening on localhost port 69237
user=> (* 8 4)
32
user=> (exit)
java.lang.Exception: Unable to resolve symbol: exit in this context (NO_SOURCE_FILE:2)
user=>
что такое проблема здесь?
версия Clojure (для обоих примеров):
user=> (clojure-version)
"1.2.1"
версия Leiningen (для обоих примеров):
shell$ lein -v
Leiningen 1.6.1 on Java 1.6.0_26 Java HotSpot(TM) 64-Bit Server VM
Похоже, что «Выход» просто выходит из текущей «оболочки». EXIT-CEPTION. –
Прошу прощения, если мой вопрос непонятен, но это не то, о чем я прошу. Я хотел бы знать, почему 'exit' ** иногда ** по объему, но не все время. –
Я подтвердил вашу проблему, но не знаю, почему это происходит. Я использую Clojure 1.3.0 и lein Leiningen 1.7.1 на Java 1.6.0_20 OpenJDK Client VM – octopusgrabbus