语境
这是 init.clj 的内容
(ns init)
(defn get-hotswap []
(filter #(= (ns-name %) 'hotswap) (all-ns)))
(let [x (get-hotswap)]
(let [old-ns *ns*]
(if (empty? x)
(do
(create-ns 'hotswap)
(in-ns 'hotswap)
(def global-kv-store (clojure.core/atom {}))
(in-ns (ns-name old-ns)))
(println "Found Hotswap"))))
现在。hotswap/global-kv-store 不存在,但 init/global-kv-store 确实存在。
问题
我该如何解决?我希望能够
- 创建一个新的命名空间热插拔
- 然后在其中定义一个新变量 global-kv-store
谢谢!