我正在Clojure的一个项目。我尝试使用该命令将我最新的数据库提交迁移到我的本地
PROFILE=dev lein ragtime migrate
得到此错误:
clojure.lang.Compiler $ CompilerException:语法错误macroexpanding clojure.core / fn at(clojure / core / unify.clj:83:18)。
:clojure.error {:phase:macro-syntax-check,:第83行,第18列,:source“clojure / core / unify.clj”,:symbol clojure.core / fn}
我不是100%确定这个问题是什么,但它似乎与leiningen 2.9.x有关。
起初,我跑了leiningen v 2.8.x(不记得究竟是哪个版本)。一切都很好。
然后我将leiningen更新到2.9.1,下次我尝试用leiningen构建时出现了这个错误。
然后我们将ring
从版本1.4.0更新到1.7.1,错误消失了。
或者,如果你必须使用旧版本的库,唯一的修复似乎是降级到leiningen 2.8:
lein upgrade 2.8.3
我也在Leiningen 2.9.1中遇到过这个问题。在我的情况下,它发生了由于lein-ring
插件,这取决于过时的unify
版本。这个问题已经在最新的lein-ring
版本中修复了:https://github.com/weavejester/lein-ring/issues/203。所以升级lein-ring
到0.12.5
修复它为我。
也许你的project.clj
格格不入。我想知道ragtime
命令来自哪里?似乎前一个开发人员为ragtime集成实现了他们自己的插件,因为它与official wiki中建议的方式不同。如果你分享你的project.clj
的一些内容以及提供连接b / w ragtime和lein的代码会很好。
降级到2.7.1,它对我有用