2010-03-03 14 views

cevap

11

Eh, normalde ilk balçık başlayabilirsiniz, sonra (require 'swank.swank) bazı liman sayısına göre port ile (swank.swank/start-repl port) değiştirilir yok, (veya belki de ... varsayılan olarak emin değilim gerekli) ve buna balçık ikinci bir örneğini bağlayabilirsiniz yeni oluşturulan REPL.

Bir repl bağlanırken bir Emacs ile, sadece şimdiye kadar bunu ilk Emacs lein swank, (swank.swank/start-repl 4006) ile başladı, Mx ikinci Emacs (bağlantı noktası numarası olarak 4006 sağlayarak) 'de sümük bağlamak, o zaman yapabileceğini Bu:

; first Emacs 
(def x 5) 

; second Emacs 
x ; evaluates to 5 
(def y 1234) 

; first Emacs 
y ; evaluates to 1234 

Cool, no? :-)

Güncelleme: Ah, BTW - (swank.swank/start-repl) arka planda yeni Repl başlar ve REPL bunu gerçekleştirmenin kullanmak blok yok. Dönüş değeri nil, bu yüzden ... yeni Repl öldürmek nasıl emin değilim

(Güncelleme 2:. Artık emin olduğum Kaldırılan şey)

Güncelleme 3: Yukarıdaki iken yöntem komuta

lein swank 4005 "localhost" :dont-close true 

liman ve ana bilgisayar adı argümanlar ile Swank başlatmak için daha uygun olabilir, ne olursa olsun orijinal Swank örneği başlatılmıştır nasıl fazladan istemci bağlamak mümkün kılan mükemmel geneldir :dont-close true'un iletilmesi gerekiyorsa açıkça belirtilmelidir. 4005 ve "localhost" varsayılan değerlerdir.

Bu, Swank'ın bağlantısını kesmeyi ve daha sonra yeniden bağlanmayı, aynı zamanda birkaç istemciyi aynı anda bağlamayı da mümkün kılar.

(Sadece Leiningen-başlatılmış Swank için ReConnections etkinleştirmek için nasıl this new question yanıtladığı sırada bu mümkün olduğunu fark; aniden kabul edilmesi :dont-close da eşzamanlı bağlantıları neden olur olmadığını kontrol etmek aklıma - ve öyle.)

+0

Bu harika. Tam olarak aradığım şey! –

+2

'Awesome' tam olarak doğru kelime. :-) BTW, herhangi bir Clojure uygulamasında Swank'ı gömmek için swank.swank/start-repl'yi kullanabilirsiniz - bunu çok iyi etki için kullanan kişiler hakkında okudum. Ana uyarı Swank'ın güvenliği umursamadığı için REPL limanına erişimin sınırlandırılmasına özen göstermeniz gerekiyor. –

+0

Görünüşe göre, yukarıdaki 3. adımda açıklanan işlevler oldukça yeni bir lein swankını gerektiriyor; Ayrıntılar için bağlantı kurduğum diğer soruyu (ve özellikle de cevabım hakkındaki yorumları) görün. –

İlgili konular