在下面的鏈接 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。 –