gpt4 book ai didi

emacs - 苹果酒无法正常工作

转载 作者:行者123 更新时间:2023-12-04 13:49:57 25 4
gpt4 key购买 nike

上个月有人帮助我让Cider从事Clojure项目。我喜欢此功能,尤其是M-。,cider-jump-to-var。但是从那以后,无论是在原始项目中还是在新项目中,我都无法复制正确的行为,并且原来帮助我进行设置的人也不再可用。

在我仍然 checkout 的原始项目中,有一行

[cider/cider-nrepl "0.7.0"]

在我的 :dependenciesproject.clj部分中。当我将这样的行添加到新项目中,然后运行 lein replcider-connect时,我收到以下消息:
; CIDER 0.8.0alpha (package: 20141006.507) (Java nil, Clojure 1.6.0, nREPL 0.2.3)
WARNING: The following required nREPL ops are not supported:
classpath complete info inspect-start inspect-refresh inspect-pop inspect-push inspect-reset macroexpand ns-list ns-vars resource stacktrace toggle-trace undef
Please, install (or update) cider-nrepl 0.8.0-snapshot and restart CIDER
WARNING: CIDER's version (0.8.0-snapshot) does not match cider-nrepl's version (0.7.0)

当然,当我跳到符号的定义时(例如 first),我得到:
cider-ensure-op-supported: Can't find nREPL middleware providing op "info".  Please, install (or update) cider-nrepl 0.8.0-snapshot and restart CIDER

奇怪的是,当我在 cider/cider-nrepl中将 "0.8.0-SNAPSHOT"的版本更改为 project.clj时,出现了相同的错误。

但是随后我在cider-nrepl Github页面上注意到 cider/cider-nrepl行应该在 :plugins中,而不是 :dependencies中。它肯定不在我的原始项目中,但是仍然可以以某种方式工作。很好,因此我在新项目中将其移至 :plugins。这次nrepl进程启动没有错误,但是当我尝试跳到 first的定义时,我得到:
Symbol first not resolved

现在,如果我尝试降级回 0.7.0,那么在启动苹果酒时会收到一条简短的消息:
WARNING: The following required nREPL ops are not supported: 
ns-list ns-vars undef
Please, install (or update) cider-nrepl 0.8.0-snapshot and restart CIDER
WARNING: CIDER's version (0.8.0-snapshot) does not match cider-nrepl's version (0.7.0)

...但是我得到了与以前相同的“符号先不解决”字样。

这真令人沮丧。当我处理原始项目时,我隐约记得某种版本不匹配的消息,并且跳转到定义功能仍然有效。现在我无法让它为我的一生工作。任何帮助将不胜感激。

编辑添加:

在进行上述探索之前,我从软件包列表中删除并重新安装了Cider。我还删除了每个步骤之间的 ~/.m2/repository/cider

今天早上,我有苹果酒版本 20141006.507。有可用的更新,因此我现在有了 20141007.452版本。命令 cider-version仅返回 CIDER 0.8.0-snapshot。在 [cider/cider-nrepl "0.8.0-SNAPSHOT"]:plugins部分的 project.clj中,无论我尝试使用哪种符号,我仍然会得到 Symbol <whatever> not resolved

最佳答案

您很可能从MELPA信息库中的Emacs中安装了CIDER软件包,这意味着您正在安装最新的CIDER快照软件包,这需要project.clj中的[cider/cider-nrepl“0.8.0-SNAPSHOT”]中间件才能正确运行。 。

由于您使用的是CIDER快照程序包,因此您也不能使用0.7.0 CIDER中间件。

当您使用M-x苹果酒 jackson 启动一个repl或在命令行中使用lein repl启动一个repl时,在启动该repl之前,Leiningen将检查并下载(默认是每天一次)最新的CIDER中间件。

这意味着您的中间件快照可能与Emacs CIDER软件包版本不同步,因为默认情况下,您将拥有在手动安装时安装的Emacs CIDER软件包快照。

为了使中间件和Emacs CIDER软件包重新同步,您应该通过M-x package-list-packages安装最新的CIDER Emacs软件包,然后选择要安装的苹果酒软件包。

然后,您应该重新启动Emacs并运行M-x cider-version,并确认在Messages中获得了以下内容(截止到今天):

CIDER 0.8.0快照(封装:20141007.13)

cider-jump-to-var和所有其他CIDER功能都应该可以正常工作。

关于emacs - 苹果酒无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26231492/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com