2

我正在研究“Clojure in Action”,并被指示在“源目录中名为 chapter08 的文件夹中”创建一个文件并尝试要求它。

我创建了以下文件(尝试了 - 和 _ 分隔)

~/clojure-1.4.0$ ls src/chapter08/
date-operations-spec.clj    date_operations.clj
date-operations.clj     date_operations_spec.clj

我尝试使用书中的代码在 REPL 中要求,但一直失败:

~/clojure-1.4.0$ java -cp clojure-1.4.0.jar clojure.main
Clojure 1.4.0
user=> 
(ns chapter08.date-operations-spec
  (:use chapter08.date-operations)
  (:use clojure.test))
FileNotFoundException Could not locate chapter08/date_operations__init.class or chapter08/date_operations.clj on classpath:   clojure.lang.RT.load (RT.java:432)
4

2 回答 2

5

使用 leiningen,自从 Amit 出版了那本优秀的书以来,它已成为管理此类事情的无处不在的工具。我只是花了比设置 leiningen 所需的时间更长的时间来写这篇文章。

然后运行 ​​lein new chapter8。
将文件复制到chapter8/src/chapter8/
运行lein repl

于 2012-08-30T21:03:57.460 回答
1

使用普通的 java 启动 clojure 是一件令人头疼的事情。例如,您的java -cp ...调用不会将 ./src 放在 classpath 上。请只使用leiningen

于 2012-08-30T21:00:41.437 回答