3

取一个简单的项目文件:

(defproject sample-clojure-cloudbees "1.0.0-SNAPSHOT" :description "Sample clojure application - clojure 1.3 !" :blah "hello")

当我阅读(获取项目:blah)时,我得到“hello”字符串返回 - 正如预期的那样。

如果我替换“你好”

:blah (slurp "some file...")

我收到一个错误,原因是:java.lang.ClassCastException:clojure.lang.PersistentList 无法转换为 java.lang.String

它似乎没有按照我的预期评估事情,有什么想法吗?

4

1 回答 1

4

defproject 是一个宏,除非你告诉它,否则它不会评估(slurp ...),

更换,

:blah (slurp "some file...")

和,

:blah ~(slurp "some file...")

会给你文件的内容。

于 2011-10-12T11:13:32.560 回答