clojure.core/refere因“$不存在”而失败
加载此项目时:clojure.core/refere因“$不存在”而失败,clojure,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
(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 ...
我注意到您的项目的名称与其中一个依赖项的名称相同。假设您使用的是Leiningen默认值(由项目映射中的FIXME提供),那么您的项目中很可能有文件src/incater/core.clj 考虑到所有这些,我能够通过创建一个名为incater的新项目并调用在REPL中执行的相同命令来重现错误。然后,我将projects incater名称空间重命名为其他名称空间,并在core.clj中对其进行了更改,并再次在REPL中调用use命令。这次我没有收到错误
旁注:我能够在没有任何:dev依赖项的情况下重现此问题。我注意到您的项目的名称与其中一个依赖项的名称相同。假设您使用的是Leiningen默认值(由项目映射中的FIXME提供),那么您的项目中很可能有文件src/incater/core.clj 考虑到所有这些,我能够通过创建一个名为incater的新项目并调用在REPL中执行的相同命令来重现错误。然后,我将projects incater名称空间重命名为其他名称空间,并在core.clj中对其进行了更改,并再次在REPL中调用use命令。这次我没有收到错误 旁注:我能够在没有任何:dev依赖项的情况下重现这个问题