2014-03-04 1 views
1

BufferedReader 동결 상태에서 콘솔에서 라인을 읽으려고하는 이유 Leiningen REPL? lein repl를 호출콘솔 입력에서 멈추는 중

lein repl 
nREPL server started on port 65142 
REPL-y 0.2.0 
Clojure 1.5.1 
    Docs: (doc function-name-here) 
      (find-doc "part-of-name-here") 
    Source: (source function-name-here) 
Javadoc: (javadoc java-object-or-class-here) 
    Exit: Control+D or (exit) or (quit) 

user=> (import [java.io BufferedReader BufferedWriter InputStreamReader]) 
java.io.InputStreamReader 
user=> (.readLine (BufferedReader. (InputStreamReader. System/in))) 
+0

똑같은 일이 일어나는지보십시오 (read-line) – KobbyPemson

+0

https://www.refheap.com/52027 mabe 2.1.2 (내 버전, 붙여 넣기에서 볼 수있는대로 작동합니다)로 다운 그레이드를 시도하십시오. – noisesmith

답변

1

실제로 코드를 평가하기위한 새로운 백그라운드 서버 프로세스를 시작합니다; 콘솔에서 볼 수있는 것은 평가를 위해 서버에 코드를 보내고 반환 된 결과를 표시하는 클라이언트 프로세스입니다. REPL 서버가 System/in을 평가할 때 실제로 클라이언트에서 쓸 수없는 서버 프로세스의 stdin을 참조하고 있다고 생각됩니다. *in*(InputStreamReader. System/in)이 코드가 lein run 또는 java 직접 발사 할 때뿐만 아니라 REPL에서 작업 할 수 있도록해야한다 교체

.

관련 문제