clojure.core / refer失败,“$不存在”

时间:2012-03-31 01:07:44

标签: clojure

加载此项目时:

(defproject incanter "1.0.0-SNAPSHOT"
  :description "FIXME: write description"
  :dependencies [[org.clojure/clojure "1.3.0"]
                 [incanter "1.3.0"]]
  :dev-dependencies [[swank-clojure/swank-clojure "1.4.0"]])

并像这样使用它:

 (use '(incanter stats))    

我收到这个神秘的错误消息:

$ does not exist
  [Thrown class java.lang.IllegalAccessError]

... lots-o-stack ...

1 个答案:

答案 0 :(得分:5)

我注意到您的项目名称与其中一个依赖项相同。假设您使用的是项目地图中FIXME给出的Leiningen默认值,您很可能在项目中有文件src/incanter/core.clj

鉴于这一切,我能够通过创建名为“incanter”的新项目并调用您在REPL中执行的相同命令来重现错误。然后我将项目“incanter”命名空间重命名为其他东西(也在core.clj中更改它)并再次在REPL中调用use命令。这次我没有收到错误。

附注:我能够在没有任何:dev-dependencies的情况下重现此问题。