“Hello,World!”的意外困难 [英] Unexpected Difficulties with "Hello, World!"

查看:173
本文介绍了“Hello,World!”的意外困难的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想学习Clojure,我已经下载并设置了以下gizmos:

I would like to learn Clojure and I've downloaded and set up the following gizmos:


  • Clojure 1.6.0从官方网站;

  • Leiningen 2.4.3;

  • 来自GitHub的Cider 0.6.0。

我已经工作了。现在我正在尝试打印消息Hello,World!,同时在Emacs中运行Cider:

I've got it working. Now I'm trying to print message "Hello, World!", while running Cider from within Emacs:

; CIDER 0.6.0 (Java 1.7.0_65, Clojure 1.6.0, nREPL 0.2.0-beta5)
user> (println "Hello World!")
Hello World!NoSuchMethodError clojure.tools.nrepl.StdOutBuffer.length()I
clojure.tools.nrepl.middleware.session/session-out/fn--7630
(session.clj:43)NoSuchMethodError clojure.tools.nrepl.StdOutBuffer.length()I
clojure.tools.nrepl.middleware.session/session-out/fn--7630 (session.clj:43)
user> 

这个噪音是什么?当我运行:

What is this noise all about? When I just run:

$ clojure
;Clojure 1.6.0
user=> (println "Hello, World!")
Hello, World!
nil

一切正常。当我使用Leiningen:

everything is fine. When I do it with Leiningen:

$ lein repl
; lotsa stuff here...
user=> (println "Hello, World!")

输入此命令后,我喜欢以下诗歌: / p>

After entering of this command I relish the following poetry:

CompilerException java.lang.RuntimeException: Unable to resolve symbol: rprintln in this context, compiling:(NO_SOURCE_PATH:1:1) NoSuchMethodError clojure.tools.nrepl.StdOutBuffer.length()I  clojure.tools.nrepl.middleware.session/session-out/fn--7630 (session.clj:43)
Exception in thread "nREPL-worker-3" java.lang.NoSuchMethodError: clojure.tools.nrepl.StdOutBuffer.length()I
    at clojure.tools.nrepl.middleware.session$session_out$fn__7630.doInvoke(session.clj:43)
    at clojure.lang.RestFn.invoke(RestFn.java:460)
    at clojure.tools.nrepl.middleware.session.proxy$java.io.Writer$ff19274a.write(Unknown Source)
    at java.io.PrintWriter.write(PrintWriter.java:456)
    at java.io.PrintWriter.write(PrintWriter.java:473)
    at clojure.core$fn__5471.invoke(core_print.clj:191)
    at clojure.lang.MultiFn.invoke(MultiFn.java:231)
    at clojure.core$pr_on.invoke(core.clj:3392)
    at clojure.core$pr.invoke(core.clj:3404)
    at clojure.lang.AFn.applyToHelper(AFn.java:154)
    at clojure.lang.RestFn.applyTo(RestFn.java:132)
    at clojure.core$apply.invoke(core.clj:624)
    at clojure.core$prn.doInvoke(core.clj:3437)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.core$apply.invoke(core.clj:624)
    at clojure.core$println.doInvoke(core.clj:3457)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at clojure.main$repl_caught.invoke(main.clj:158)
    at clojure.tools.nrepl.middleware.interruptible_eval$evaluate$fn__7569$fn__7582.invoke(interruptible_eval.clj:76)
    at clojure.main$repl$fn__6634.invoke(main.clj:259)
    at clojure.main$repl.doInvoke(main.clj:257)
    at clojure.lang.RestFn.invoke(RestFn.java:1096)
    at clojure.tools.nrepl.middleware.interruptible_eval$evaluate$fn__7569.invoke(interruptible_eval.clj:56)
    at clojure.lang.AFn.applyToHelper(AFn.java:152)
    at clojure.lang.AFn.applyTo(AFn.java:144)
    at clojure.core$apply.invoke(core.clj:624)
    at clojure.core$with_bindings_STAR_.doInvoke(core.clj:1862)
    at clojure.lang.RestFn.invoke(RestFn.java:425)
    at clojure.tools.nrepl.middleware.interruptible_eval$evaluate.invoke(interruptible_eval.clj:41)
    at clojure.tools.nrepl.middleware.interruptible_eval$interruptible_eval$fn__7610$fn__7613.invoke(interruptible_eval.clj:171)
    at clojure.core$comp$fn__4192.invoke(core.clj:2402)
    at clojure.tools.nrepl.middleware.interruptible_eval$run_next$fn__7603.invoke(interruptible_eval.clj:138)
    at clojure.lang.AFn.run(AFn.java:22)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)

哦,Nooo。什么痛苦!停止它,停止它!

Oh, Nooo. What a pain! Stop it, stop it!

我很困惑。它是什么,我如何解决这个问题?有没有类似的经验?如何在Clojure中打印Hello,World!

I'm so perplexed. What is it and how do I fix this? Has anyone similar experience? How do I print "Hello, World!" in Clojure?

推荐答案

我可以用leinengen 2.4.3重现这个错误。您可以运行 lein upgrade 2.4.2 获取实际工作的最新版本。这是不寻常的leiningen团队标记一个坏的建设,像这样稳定,起初我怀疑苹果酒。顺便说一下,苹果酒的稳定版本应该是0.7.0。

I can reproduce this error with leinengen 2.4.3. You can run lein upgrade 2.4.2 to get the most recent version that actually works. It's unusual for the leiningen team to mark a bad build like this as stable, at first I suspected cider. By the way, the "stable" version of cider should be 0.7.0.

这篇关于“Hello,World!”的意外困难的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆