当前位置: 首页 > 知识库问答 >
问题:

为什么苹果酒会发现苹果酒的错误版本,我如何修复它?

申屠喜
2023-03-14

我已经通过el-get安装了苹果酒,就在今天。当我在emacs中启动苹果酒时,会打印以下横幅:

; CIDER 0.8.0-snapshot (Java 1.7.0_65, Clojure 1.6.0, nREPL 0.2.6)
WARNING: The following required nREPL ops are not supported: 
eldoc 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)
user> 

我可以在cider中运行单元测试,但其他很多事情都不起作用,比如文档查找等。请注意,提示也在用户名称空间中,而不是项目名称空间中。

我的~/. lein/profiles.clj

{:user 
 {:plugins 
  [[cider/cider-nrepl "0.7.0"]]}
}

我看到lein下载了所需的内容(奇怪的是,还有一些):

$ find ~/.m2 -name "*nrepl*"
~/.m2/repository/cider/cider-nrepl
~/.m2/repository/cider/cider-nrepl/0.8.0-SNAPSHOT/cider-nrepl-0.8.0-20140914.152356-14.jar.sha1
~/.m2/repository/cider/cider-nrepl/0.8.0-SNAPSHOT/cider-nrepl-0.8.0-20140914.152356-14.pom
~/.m2/repository/cider/cider-nrepl/0.8.0-SNAPSHOT/cider-nrepl-0.8.0-20140914.152356-14.jar
~/.m2/repository/cider/cider-nrepl/0.8.0-SNAPSHOT/cider-nrepl-0.8.0-20140914.152356-14.pom.sha1
~/.m2/repository/cider/cider-nrepl/0.8.0-SNAPSHOT/cider-nrepl-0.8.0-SNAPSHOT.pom
~/.m2/repository/cider/cider-nrepl/0.8.0-SNAPSHOT/cider-nrepl-0.8.0-SNAPSHOT.jar
~/.m2/repository/cider/cider-nrepl/0.7.0/cider-nrepl-0.7.0.jar.sha1
~/.m2/repository/cider/cider-nrepl/0.7.0/cider-nrepl-0.7.0.pom.sha1
~/.m2/repository/cider/cider-nrepl/0.7.0/cider-nrepl-0.7.0.jar
~/.m2/repository/cider/cider-nrepl/0.7.0/cider-nrepl-0.7.0.pom
~/.m2/repository/org/clojure/tools.nrepl
~/.m2/repository/org/clojure/tools.nrepl/0.2.6/tools.nrepl-0.2.6.pom.sha1
~/.m2/repository/org/clojure/tools.nrepl/0.2.6/tools.nrepl-0.2.6.pom
~/.m2/repository/org/clojure/tools.nrepl/0.2.6/tools.nrepl-0.2.6.jar.sha1
~/.m2/repository/org/clojure/tools.nrepl/0.2.6/tools.nrepl-0.2.6.jar

我还看到lein想同时带来苹果酒nrepl和工具。nrepl,尽管我确实不明白为什么:

$ lein deps :tree
warn
 [cider/cider-nrepl "0.7.0"]
   [cljs-tooling "0.1.3" :exclusions [[org.clojure/clojure]]]
   [compliment "0.1.3" :exclusions [[org.clojure/clojure]]]
   [org.clojure/java.classpath "0.2.0" :exclusions [[org.clojure/clojure]]]
   [org.clojure/tools.namespace "0.2.5" :exclusions [[org.clojure/clojure]]]
   [org.clojure/tools.trace "0.7.8" :exclusions [[org.clojure/clojure]]]
   [org.tcrawley/dynapath "0.2.3" :exclusions [[org.clojure/clojure]]]
 [clojure-complete "0.2.3" :scope "test" :exclusions [[org.clojure/clojure]]]
 [org.clojure/clojure "1.6.0"]
 [org.clojure/tools.nrepl "0.2.6" :scope "test" :exclusions [[org.clojure/clojure]]]

最后,我的project.clj,尽管我在所有的Clojure项目中都看到了这个问题:

(defproject cider-demo "0.1.0-SNAPSHOT"
  :description "FIXME: write description"
  :url "http://example.com/FIXME"
  :license {:name "Eclipse Public License"
            :url "http://www.eclipse.org/legal/epl-v10.html"}
  :dependencies [[org.clojure/clojure "1.6.0"]])

如何让苹果酒提取正确的苹果酒nrepl?

共有1个答案

邵畅
2023-03-14

错误表现得非常清楚:

WARNING: CIDER's version (0.8.0-snapshot) does not match cider-nrepl's version (0.7.0)

您需要更改配置文件。clj相关性:

{:user 
 {:plugins 
  [[cider/cider-nrepl "0.8.0-SNAPSHOT"]]}
}

或者降低您的emacs苹果酒版本,以匹配您当前要求的苹果酒nrepl版本。

tools.nrepl在这里不是问题,而且,苹果酒实际上不能没有tools.nrepl.

 类似资料:
  • 我正在使用luminus进行试验,当我使用emacs m-x苹果酒连接连接到由lein run启动的repl时,所有新的luminus项目都会给我苹果酒版本/cider nrepl版本不匹配错误: 警告:CIDER的版本(0.14.0)与苹果酒-nrepl的版本(无)不匹配。东西会坏的! 如果我忽略自动启动的nrepl并使用M-x苹果酒插孔启动新的repl,我看不到错误。这是我通常在clojure

  • 我正在完成下面的Clojure教程。我刚刚安装了Emacs和Leiningen。如果单独调用,两者都可以工作。但是,当我试图调用时,如本教程所述: 使用Emacs打开文件clojure noob/src/clojure_noob/core。clj,您在第1章中创建的。接下来,使用M-x苹果酒插孔。这将启动REPL并创建一个新的缓冲区,您可以在其中与之交互。 在最后一条消息后将永远挂起: 我做错了什

  • 我已经使用这个精彩的教程为clojure安装和设置了Emacs。如果我用repl启动,非常好!现在我在这里读到一个min应该是,我更改了我的项目。clj-in。lein deirectory(即“0.8.1”)到“0.9.1”,当我再次开始repl时,我收到以下警告: 你知道我该怎么解决这个问题吗?

  • 当由于无限循环而陷入死锁时,如何退出苹果酒回购? 当它发生时,我必须杀死emacs,甚至重启我的电脑来杀死苹果酒回购。有没有更好的方法来解决这个问题?

  • 我想学习一些Clojure,我正在尝试从Emacs运行REPL,但我无法让它工作。 我创建了一个基本的项目与lein。我在Emacs中打开生成的文件core.clj,当我试图从它运行REPL时(通过运行苹果酒杰克),我只得到消息: 我已经切换了错误调试,回溯(最后几行)是: 当我在终端中运行leinrun时,代码运行正常 另外,当我在终端中运行lein repl时,repl会使用以下信息正常运行:

  • 场景是这样的:我正在为一个需要Java解决方案的类做一个项目:特别是,关键函数接收一个人工智能问题,并返回一个答案字符串。我想要的方法是接收问题,然后将其发送到解决问题的Clojure函数,并将解决方案String返回给键函数,键函数反过来提交它。 我的问题是关于工作流程的。作为一个狂热的emacs用户(尽管对Clojure来说是新手),我想获得使用苹果酒的好处。然而,由于Clojure和该项目的