问题 你如何改变Leiningen和LightTable中的Clojure版本?


当我在LightTable中输入(clojure-version)到我的repl时,我得到了 "1.5.1" 作为输出。有没有办法升级到1.6.0?

我假设它正在从Leiningen(我的机器上的2.3.4)中绘制Clojure版本,其中装有1.5.1开箱即用。如何确保Leiningen和LightTable都使用最新版本的Clojure?我google了一下,找不到任何明确的答案。

我找到了 这个问题,但它没有具体解决我的问题。有没有像我可以调用的“lein update”命令那样自动化这个过程,LightTable会识别和接收哪个,或者这是一厢情愿的想法?


6357
2018-06-07 06:51


起源

你有没有尝试更新project.clj的clojure版本,然后运行 lein update? - Fabricator
是的是的。我刚刚意识到这是“lein升级”。并且你建议我从项目根目录中做到这一点是正确的。我可以让lein repl和LightTable repl在1.6.0版本上运行。但是,当我在非clojure项目目录中运行lein repl时,它仍默认为1.5.1。如果您可以告诉我如何从Lein 2.3.4升级到最新版本,并将其与上面的内容打包,我很乐意接受您的回答。 官方文件 仅升级处理从lein1到lein2。 - kurofune
你不只是为此创建一个虚拟项目吗? - Fabricator
Leiningen的官方版本还没有使用1.6.0。如果你真的想在项目之外的默认repl中使用1.6.0,你可以等待稳定版本或者从github trunk使用leiningen。 - Diego Basch
对于2.x版本, lein upgrade 没有参数应该足以让你获得最新的稳定版本 - noisesmith


答案:


要升级您的Leiningen版本,请运行 lein upgrade,当系统询问您是否要继续时,请键入“Y”。这将自动将您的Leiningen升级到最新的稳定版本。在撰写本期使用的Clojure 1.6.0时。

要升级项目的Clojure版本,请查看您的 project.clj 为了 [org.clojure/clojure] 依赖项,并将版本号更改为所需的版本。


12
2018-05-04 23:51



哪里 project.clj 对于Light Table,如果你不在一个项目中? - Petrus Theron
我已经很久没有使用它,但我认为它使用Leiningen的默认版Leiningen是什么? - Daniel Compton
更新 ~/.lein/profiles.clj 至 {:repl {:dependencies [^:displace [org.clojure/clojure "1.9.0"]]}} 似乎没有用。 - Petrus Theron