在Clojure中,如果我想引入clojure.inspector函数,我可以这样:
(use `[clojure.math.numeric-tower :include (expt)])
从REPL,我现在可以评估函数expt。
但是,在我看来应该有(也可能是)另一种方法 - 使用Leiningen依赖项来提取代码。
我将此行添加到我的project.clj:
[org.clojure/math.numeric-tower "0.0.2"]
然后我重新启动REPL以引入新的依赖项。我甚至做“lein deps”是安全的(该命令没有输出)。当我尝试评估expt时,它给了我一个RuntimeException,并说它无法解析符号。
如何使用Leiningen依赖项访问expt函数?
答案 0 :(得分:3)
你做不到。它不像那样工作。添加依赖项会将代码放在类路径上,这意味着它可供您使用。为了实际使用命名空间内的内容,您需要使用
(require '[the-namespace :refer [the things you want to use]])
或
(require '[the-namespace :as tn])
(tn/somevar)
或在ns声明中执行其中任何一项(不在REPL中并使用文件时)
(ns foo
(:require [the-namespace :as tn]))