我刚刚玩Clojure(版本1.1.0),发现这种行为很奇怪:
user=> (in-ns 'greet)
#<Namespace greet>
greet=> (clojure.core/require 'clojure.core)
nil
greet=> (clojure.core/require 'clojure.string)
java.io.FileNotFoundException: Could not locate clojure/string__init.class or clojure/string.clj on classpath: (NO_SOURCE_FILE:0)
greet=> (clojure.core/require '(clojure.string))
nil
当我使用require
功能时,它适用于'clojure.core
,但不适用于'clojure.string
并适用于'(clojure.string)
。为什么会这样?
答案 0 :(得分:3)
你使用的是旧版本的clojure(AFAIK甚至没有包含clojure.string
)。您的示例代码在当前的clojure 1.5.1