У меня есть этот файл Clojure:clojure.tools.namespace.repl/обновить не работает
(ns foo.core)
(def bar 1)
И это project.clj:
(defproject foo "version"
:dependencies [[org.clojure/clojure "1.6.0"]]
:main foo.core)
я открыть терминал и запустить Lein Отв. Затем я изменяю значение bar OUTSIDE repl.
(def bar 1)
в
(def bar 2)
Я изменить это значение на редактора и не забудьте сохранить файл. Затем я запускаю команду в repl (load-string "(clojure.tools.namespace.repl/refresh)") Я набираю bar в repl и все равно получаю 1 вместо 2. Однако если вы просто запустите (clojure. tools.namespace.repl/refresh), а затем запросить значение bar, которое вы получите 2. Почему это так? Почему функция load-string нарушает его?
Я отредактировал мой вопрос, чтобы уточнить его. Фактически я изменяю значение bar за пределами repl. Я сделал это в редакторе и впоследствии сохранил файл. –