请忽略以下内容 - 我直接使用 clojure.instant/read-instant-date
测试了它,看来这不是在普通的 REPL 中使用 #inst
的结束方式。
这与 Java 没有关系,因为更改 Clojure 的版本本身不会改变你使用的 Java 版本。
一个快速实验表明,两个版本以相同的方式解析日期 - 对 (.getTime ...)
的调用返回相同的 -12238560000000
。
所以这似乎是不同之处在于实例的输出方式。提交 213c50e7
通过切换到不同的打印方法解决了 CLJ-2803
。
通过使用 1.12.0-alpha10
中的旧打印方法,我们可以确认猜测。
(let [fmt (java.text.SimpleDateFormat. "yyyy-MM-dd'T'HH:mm:ss.SSS-00:00")]
(.setTimeZone fmt (java.util.TimeZone/getTimeZone "GMT"))
(.format fmt d))
=> "1582-02-24T00:00:00.000-00:00"