我想在功能块中导入依赖项。 w这些依赖项不公开,因此我不能通过project.clj包含它们并在ns块中要求它们。
但是,这些jar在服务器env中可用,并且当下面的deps在类路径中时,服务器调用以下函数。
但是当我在服务器env之外编译下面的函数时,我仍然遇到编译器错误,它无法找到util和web ns。
(defn imm
[]
(require '[immutant.web :as web]
'[immutant.utilities :as util])
(server/load-views (io/file (util/app-root) "src/pm/views"))
(web/start "/dev" handler))
答案 0 :(得分:1)
您必须延迟Var分辨率。
(defn imm
[]
(require '[immutant.web :as web] '[immutant.utilities :as util])
(server/load-views (io/file @(resolve 'util/app-root) "src/pm/views"))
(@(resolve 'web/start) "/dev" handler))