Clojure (cljc.java-time) - 在日期之间的天数期间发生转换错误

Clojure (cljc.java-time) - Casting error during Number of Days between to Dates

我在理解这个错误的去向时遇到了一些麻烦。或者我应该在哪里寻找 example/documentation。我倾向于 cljc.java-time 库,以便能够在 Clojure 和 ClojureScript 中使用它。

(ns cljexplore.core
  (:require [cljc.java-time.local-date :as ld])
  (:require [cljc.java-time.period :as period])
  (:require [cljc.java-time.duration :as duration]))

(def bbday (ld/parse "2021-11-12"))
(def today (ld/now))
(defn -main
  [& args]
  (let [dur (period/between today bbday)]
  (println (period/of-days dur))))

当我尝试 运行 这个程序时,我得到一个错误: class java.time.Period 无法转换为 class java.lang.Number(java.time.Period 和 java.lang.Number 在加载程序 java.base 的模块 'bootstrap')

不确定从这里到哪里才能使用此库简单计算两个日期之间的距离。可以在正确的方向上使用微调。

或许,这就是您要找的:

 (require '[cljc.java-time.temporal.chrono-unit :as chrono-unit])
 (chrono-unit/between chrono-unit/days today bbday)
 => 100