在下面的链接 http://clojure.org/reference/repl_and_main#_launching_a_socket_server如何从leiningen或boot启动Clojure 1.8中的套接字REPL?
它有详细的关于如何启动插座REPL形式Java的信息,但由于我使用的雷音,所以如何从雷音开始。如果从启动开始运行良好,我也可以尝试使用启动。
在下面的链接 http://clojure.org/reference/repl_and_main#_launching_a_socket_server如何从leiningen或boot启动Clojure 1.8中的套接字REPL?
它有详细的关于如何启动插座REPL形式Java的信息,但由于我使用的雷音,所以如何从雷音开始。如果从启动开始运行良好,我也可以尝试使用启动。
要启动一个套接字REPL,你需要这个选项传递给JVM
-Dclojure.server.repl="{:port 5555 :accept clojure.core.server/repl}"
在Leiningen,添加到您的project.clj
。
:jvm-opts ["-Dclojure.server.repl={:port 5555 :accept clojure.core.server/repl}"] ; notice that the map is not quoted.
和引导,出口环境变量BOOT_JVM_OPTIONS
export BOOT_JVM_OPTIONS='-Dclojure.server.repl="{:port 5555 :accept clojure.core.server/repl}"'
一旦你的REPL运行时,你可以从不同的终端上运行telnet
连接到插座REPL。 REPLception!
$ telnet 127.0.0.1 5555
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
user=> (+ 1 1)
2
user=>
启动时很明显,因为“export”是一个linux命令,我知道如何使用它。但是对于lein,你使用“:jvm-opts ...”,我们应该放?把它放到project.clj中? –
是的,更新它。 –
开机即将开始socket-server
task。从引导2.7.1开始,包含此任务的版本尚未发布。
与此同时,您可以使用以下命令启动套接字REPL。要使用一个Socket REPL使用启动端口50505监听推出Clojure的过程中,使用方法:
boot -i "(do (require 'clojure.core.server) (clojure.core.server/start-server {:port 50505 :name :repl :accept 'clojure.core.server/repl}))" wait
使用Leiningen:
JVM_OPTS='-Dclojure.server.myrepl={:port,50505,:accept,clojure.core.server/repl}' lein repl
使用痛Clojure的罐子:
java -Dclojure.server.myrepl="{:port 50505 :accept clojure.core.server/repl}" -jar ~/.m2/repository/org/clojure/clojure/1.8.0/clojure-1.8.0.jar
Leiningen自动启动套接字上的repl。看看它在启动时打印的横幅,看看它挑选了哪一个。 – dsm
@dsm作者正在讨论Clojure 1.8中的新套接字REPL,而不是Leiningen的REPL。 –