尝试调用未绑定的fn:#'datoteka.core / to-file

时间:2018-06-29 09:08:15

标签: clojure

我对Clojure非常陌生,并且出现以下错误:

Caused by: java.lang.IllegalStateException: Attempting to call unbound fn: #'datoteka.core/to-file
at clojure.lang.Var$Unbound.throwArity(Var.java:45)
at clojure.lang.AFn.invoke(AFn.java:32)
at package.auth_monitor$start_monitor_thread.invokeStatic(auth_monitor.clj:43)
at package.auth_monitor$start_monitor_thread.invoke(auth_monitor.clj:38)
at package.auth_monitor$start_monitor.invokeStatic(auth_monitor.clj:62)
at package.auth_monitor$start_monitor.invoke(auth_monitor.clj:49)
at package.auth_monitor$fn__11768.invokeStatic(auth_monitor.clj:71)
at package.auth_monitor$fn__11768.invoke(auth_monitor.clj:70)

代码是:

42. (let [^TailerListener listener (make-listener)
43.    ^File file (fs/to-file path)
44.    ^Tailer tailer (Tailer. file listener 1000 true)]
45. (doto (Thread. tailer)
46.  (.setDaemon false)
47.  (.start)))

1 个答案:

答案 0 :(得分:1)

我想您正在使用Datoteka库。尝试使用file函数根据路径获取File对象(to-file似乎是错误的名称):

(let [^TailerListener listener (make-listener)
      ^File file (fs/file path)
      ^Tailer tailer (Tailer. file listener 1000 true)]
  (doto (Thread. tailer)
    (.setDaemon false)
    (.start)))