emacs - una - relacion a distancia sexualidad
¿Cómo puedo hacer que nrepl-ritz-jack-in funcione a distancia sobre TRAMP/Emacs? (1)
Si la respuesta todavía se está ejecutando desde el anterior cider-jack-in, debe usar el comando cidercommand para conectarse a la instancia en ejecución, o detener la anterior antes de comenzar una nueva
From Here ` Clojure - problema de conexión que vuelve a ejecutar sider-jack-in
También vea este https://devcenter.heroku.com/articles/debugging-clojure
Lo que quiero:
Tengo un programa de clojure en un sitio remoto, llamémoslo mccarthy
. Lo que quiero hacer es conectarme a un nrepl-ritz
desde mi computadora portátil, preferiblemente usando nrepl-ritz-jack-in
. El conector funciona bien para un programa local, pero no parece conectarse a un programa remoto.
Intento 1
Cx Cf en /mccarthy:code/program/project.clj
(require ''nrepl-ritz)
Mx nrepl-ritz-jack-in
Resultado
Emacs parece colgarse. Si voy al *nrepl-server*
, veo esto:
Exception in thread "main" java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.flatland.drip.Main.invoke(Main.java:117)
at org.flatland.drip.Main.start(Main.java:88)
at org.flatland.drip.Main.main(Main.java:64)
Caused by: java.lang.AssertionError: Assert failed: project
at leiningen.ritz_nrepl$start_jpda_server.invoke(ritz_nrepl.clj:23)
at leiningen.ritz_nrepl$ritz_nrepl.doInvoke(ritz_nrepl.clj:95)
(y toneladas de otras líneas, también ...)
Estoy usando el drip
en mi computadora portátil, pero no en mccarthy
, así que claramente nrepl-ritz-jack-in
no detecta que se trata de un archivo remoto. Sin nrepl-jack-in
antiguo nrepl-jack-in
funcionará como se espera en este caso.
Intento 2
También intenté iniciar un nrepl-ritz
usando lein
en mccarthy
:
mattox@mccarthy$ lein ritz-nrepl
nREPL server started on port 42874
Desde mi computadora portátil reenvío un puerto para que el local 42874
conecte al 42874
en mccarthy
:
ssh -L 42874:localhost:42874 -N mccarthy
Entonces, desde mi local Emacs:
(require ''nrepl-ritz)
Mx nrepl
Anfitrión: 127.0.0.1
Puerto: 42874
Esto me da una conexión:
; nREPL 0.1.7-preview
user>
Así que para probarlo, corro
Mx nrepl-ritz-threads
Me da una bonita tabla de hilos.
Mx nrepl-ritz-break-on-exception
user> (/ 1 0)
Resultado
Esto se bloquea, pero a veces muestra un búfer de depuración oculto con algunos reinicios disponibles. Si le digo que devuelva la excepción al programa, nunca le devolverá el control al REPL.
He hecho muchas búsquedas pero no he podido obtener nada más específico que "asegurarte de que lein esté en tu camino" (Y lo hice, en ambas máquinas ...).