我在Clojure和leiningen命令中有错误

问题描述 投票:2回答:4

我正在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}

clojure leiningen
4个回答
6
投票

我不是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

4
投票

我也在Leiningen 2.9.1中遇到过这个问题。在我的情况下,它发生了由于lein-ring插件,这取决于过时的unify版本。这个问题已经在最新的lein-ring版本中修复了:https://github.com/weavejester/lein-ring/issues/203。所以升级lein-ring0.12.5修复它为我。


0
投票

也许你的project.clj格格不入。我想知道ragtime命令来自哪里?似乎前一个开发人员为ragtime集成实现了他们自己的插件,因为它与official wiki中建议的方式不同。如果你分享你的project.clj的一些内容以及提供连接b / w ragtime和lein的代码会很好。


0
投票

降级到2.7.1,它对我有用

© www.soinside.com 2019 - 2024. All rights reserved.