我正在尝试弄清楚是否能将 tools.namespace.track 用于一个项目,但我不理解 :unload :load 功能。
(require '[clojure.tools.namespace.track :as ns-track])
;; define a empty tracker and add some dependencies
(def tracker (-> (ns-track/tracker)
(ns-track/add '{alpha #{beta}
beta #{gamma delta}})))
;; now add a new dependency and check what we need to unload and load
(-> tracker
(ns-track/add '{epsilon #{}})
(select-keys [:clojure.tools.namespace.track/unload
:clojure.tools.namespace.track/load]))
#:clojure.tools.namespace.track{:unload (epsilon alpha beta),
:load (epsilon beta alpha)}
我不明白为什么需要 alpha 和 beta 才能卸载/加载,也许我遗漏了什么。
我正在使用最新版本。
谢谢!