4

我正在 Eclipse 上学习 clojure(逆时针插件)。

  • 当我在 Eclipse 中单击“运行”时(就像使用 Java 一样),我不仅打开了控制台,还打开了这个“REPL”窗口。为什么它是必要的,它有什么作用?
  • 当我单击“运行”时,启动应用程序需要几秒钟。有没有办法让它更快?
  • 当我需要编辑代码并重新启动(运行)应用程序时,我收到以下消息:“无法启动选择,并且最近没有启动”。那是什么,为什么它不让我重新启动我的代码?如果我等待一段时间,我可以再次启动它。

这是我正在尝试运行的简单代码:

(ns ClojureTest.core)

(let [input (read-line)]
  (if (= "x" input)
    (do
      (println "Exit")
      (System/exit 0)
    )
    (do
      (println input)
      (recur)
    )
  )
)

更新:我设法进一步搞砸了。现在,当我单击“运行”时,控制台会忽略任何输入,就好像应用程序甚至没有运行一样......

UPDATE2我已经重启了eclipse,之前的问题就解决了。现在我可以再次在控制台中运行该应用程序。我不知道发生了什么。我能看到的唯一区别是,当我把它搞砸时——REPL 窗口标题看起来像这样:

REPL @ nrepl://127.0.0.1:60429 (user)

重新启动 eclipse 后,它又回到了这个:

REPL @ nrepl://127.0.0.1:60001 (ClojureTest.core)

我不知道这是什么意思。

4

1 回答 1

2

每个项目只需要一个打开的 REPL。打开后,您可以通过从 Clojure 菜单中选择来评估现有文件(命名空间)中更改的代码。然后将所选内容或整个文件发送到 REPL 进行评估,具体取决于您选择的内容。您可以通过调用 REPL 中的函数来立即尝试您的更改。这称为交互式开发。在尝试更改之前,无需重新编译整个项目。

CCW 的开发人员刚刚选择了“运行”按钮的动作为“为现有项目打开一个 REPL”。只使用一次,不要一直按,开发时。

于 2013-09-15T11:54:20.280 回答