使用命名空间加载文件不起作用?

时间:2016-03-08 18:32:10

标签: clojure namespaces

我有一个完全独立的文件系统文件:

(ns separate)

(def a "test")

现在,如果我尝试加载这样的文件:

(load-file "separate.clj")
(require 'separate)
(separate/a)

它会抛出一个错误,指出找不到separate作为命名空间。为什么这样,我该如何解决?

编辑:这就是我正在运行的代码:

enter image description here

2 个答案:

答案 0 :(得分:0)

(require 'separate)

应该是:

(require '[separate])

clojuredocs中没有例子可能是因为单个部分命名空间不常见。

答案 1 :(得分:0)

找到解决方案,我需要做这样的事情:

(deref (get (ns-interns 'separate) 'a))