응답: Archlinux에서 Connexion이 거부됨
15922 단어 leiningen
묘사
구성:$ uname -a
Linux arch 4.3.0-1-ARCH #1 SMP PREEMPT Mon Nov 2 16:52:35 CET 2015 x86_64 GNU/Linux
$ lein version
Leiningen 2.5.3 on Java 1.7.0_91 OpenJDK 64-Bit Server VM
$ java -version
java version "1.7.0_91"
OpenJDK Runtime Environment (IcedTea 2.6.2) (Arch Linux build 7.u91_2.6.2-1-x86_64)
OpenJDK 64-Bit Server VM (build 24.91-b01, mixed mode)
REPL에 연결하기가 어렵습니다.나는 이 문제를 이렇게 이해한다.$ lein new issue
$ cd issue
$ lein repl
Exception in thread "main" java.net.ConnectException: Connection refused, compiling:(/tmp/form-init7654738477480788732.clj:1:73)
at clojure.lang.Compiler.load(Compiler.java:7239)
at clojure.lang.Compiler.loadFile(Compiler.java:7165)
at clojure.main$load_script.invoke(main.clj:275)
at clojure.main$init_opt.invoke(main.clj:280)
at clojure.main$initialize.invoke(main.clj:308)
at clojure.main$null_opt.invoke(main.clj:343)
at clojure.main$main.doInvoke(main.clj:421)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at clojure.lang.Var.invoke(Var.java:383)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.Var.applyTo(Var.java:700)
at clojure.main.main(main.java:37)
Caused by: java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:579)
at java.net.Socket.connect(Socket.java:528)
at java.net.Socket.<init>(Socket.java:425)
at java.net.Socket.<init>(Socket.java:208)
at clojure.tools.nrepl$connect.doInvoke(nrepl.clj:184)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at clojure.tools.nrepl.ack$send_ack.invoke(ack.clj:47)
at clojure.tools.nrepl.server$start_server.doInvoke(server.clj:157)
at clojure.lang.RestFn.invoke(RestFn.java:619)
at user$eval7514.invoke(form-init7654738477480788732.clj:1)
at clojure.lang.Compiler.eval(Compiler.java:6782)
at clojure.lang.Compiler.eval(Compiler.java:6772)
at clojure.lang.Compiler.eval(Compiler.java:6772)
at clojure.lang.Compiler.load(Compiler.java:7227)
... 11 more
REPL server launch timed out.
#1321 질문에 대한 조언과 같이, 저는 Lein Headless를 시작해서 연결할 수 있습니다.$ lein :headless
nREPL server started on port 36604 on host 127.0.0.1 - nrepl://127.0.0.1:36604
$ lein repl :connect nrepl://127.0.0.1:36604
Connecting to nREPL at nrepl://127.0.0.1:36604
REPL-y 0.3.7, nREPL 0.2.10
Clojure 1.7.0
OpenJDK 64-Bit Server VM 1.7.0_91-b01
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)
Results: Stored in vars *1, *2, *3, an exception in *e
user=>
#leiningen에서 물어봤는데 제안에 따라 자바에서 jstack를 실행했습니다.$ ps ax | grep java
3556 pts/3 Sl+ 0:30 java -Xbootclasspath/a:/home/josuah/.lein/self-installs/le
4886 pts/4 Ss+ 0:00 /usr/bin/grep java
$ jstack 3556
2015-11-18 04:14:39
Full thread dump OpenJDK 64-Bit Server VM (24.91-b01 mixed mode):
"Attach Listener" daemon prio=10 tid=0x00007fdae4001000 nid=0x11ca runnable [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"ClosingPipeCloser 360581176" daemon prio=10 tid=0x00007fdb08393800 nid=0xe38 in Object.wait() [0x00007fdada5c0000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000f52ecb60> (a java.lang.Thread)
at java.lang.Thread.join(Thread.java:1281)
- locked <0x00000000f52ecb60> (a java.lang.Thread)
at java.lang.Thread.join(Thread.java:1355)
at com.hypirion.io.Pipe.join(Pipe.java:120)
at com.hypirion.io.ClosingPipe$OutCloser.run(ClosingPipe.java:111)
at java.lang.Thread.run(Thread.java:745)
"PipeThread 360581176" daemon prio=10 tid=0x00007fdb081b3000 nid=0xe37 in Object.wait() [0x00007fdada6c1000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000f52c9640> (a java.lang.Object)
at java.lang.Object.wait(Object.java:503)
at com.hypirion.io.RevivableInputStream.read(RevivableInputStream.java:140)
- locked <0x00000000f52c9640> (a java.lang.Object)
- locked <0x00000000f52c95b8> (a com.hypirion.io.RevivableInputStream)
at java.io.InputStream.read(InputStream.java:101)
at com.hypirion.io.Pipe$PipeOutputStream.run(Pipe.java:239)
at java.lang.Thread.run(Thread.java:745)
"PipeThread 1815349000" daemon prio=10 tid=0x00007fdb0854f000 nid=0xe35 runnable [0x00007fdada7c2000]
java.lang.Thread.State: RUNNABLE
at java.io.FileInputStream.readBytes(Native Method)
at java.io.FileInputStream.read(FileInputStream.java:272)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:275)
at java.io.BufferedInputStream.read(BufferedInputStream.java:334)
- locked <0x00000000f52e53a8> (a java.lang.UNIXProcess$ProcessPipeInputStream)
at java.io.FilterInputStream.read(FilterInputStream.java:107)
at com.hypirion.io.Pipe$PipeOutputStream.run(Pipe.java:239)
at java.lang.Thread.run(Thread.java:745)
"PipeThread 1870807730" daemon prio=10 tid=0x00007fdb08576800 nid=0xe34 runnable [0x00007fdada8c3000]
java.lang.Thread.State: RUNNABLE
at java.io.FileInputStream.readBytes(Native Method)
at java.io.FileInputStream.read(FileInputStream.java:272)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:275)
at java.io.BufferedInputStream.read(BufferedInputStream.java:334)
- locked <0x00000000f52e32e0> (a java.lang.UNIXProcess$ProcessPipeInputStream)
at java.io.FilterInputStream.read(FilterInputStream.java:107)
at com.hypirion.io.Pipe$PipeOutputStream.run(Pipe.java:239)
at java.lang.Thread.run(Thread.java:745)
"process reaper" daemon prio=10 tid=0x00007fdb086ae800 nid=0xe33 runnable [0x00007fdb00061000]
java.lang.Thread.State: RUNNABLE
at java.lang.UNIXProcess.waitForProcessExit(Native Method)
at java.lang.UNIXProcess.access$500(UNIXProcess.java:55)
at java.lang.UNIXProcess$4.run(UNIXProcess.java:228)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
"RevivableReader 1254238582" daemon prio=10 tid=0x00007fdb0837c000 nid=0xe31 runnable [0x00007fdada9c4000]
java.lang.Thread.State: RUNNABLE
at java.io.FileInputStream.readBytes(Native Method)
at java.io.FileInputStream.read(FileInputStream.java:243)
at com.hypirion.io.RevivableInputStream$ThreadReader.run(RevivableInputStream.java:232)
at java.lang.Thread.run(Thread.java:745)
"Service Thread" daemon prio=10 tid=0x00007fdb080b6800 nid=0xdee runnable [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"C1 CompilerThread1" daemon prio=10 tid=0x00007fdb080b4000 nid=0xded waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"C2 CompilerThread0" daemon prio=10 tid=0x00007fdb080b1000 nid=0xdec waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"Signal Dispatcher" daemon prio=10 tid=0x00007fdb080af000 nid=0xdeb runnable [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"Finalizer" daemon prio=10 tid=0x00007fdb08081800 nid=0xdea in Object.wait() [0x00007fdb01efd000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000cdab46f0> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:135)
- locked <0x00000000cdab46f0> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:151)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209)
"Reference Handler" daemon prio=10 tid=0x00007fdb0807f800 nid=0xde9 in Object.wait() [0x00007fdb01ffe000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000cdab4458> (a java.lang.ref.Reference$Lock)
at java.lang.Object.wait(Object.java:503)
at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:133)
- locked <0x00000000cdab4458> (a java.lang.ref.Reference$Lock)
"main" prio=10 tid=0x00007fdb08009000 nid=0xde5 in Object.wait() [0x00007fdb12469000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000f52ead70> (a java.lang.Thread)
at java.lang.Thread.join(Thread.java:1281)
- locked <0x00000000f52ead70> (a java.lang.Thread)
at java.lang.Thread.join(Thread.java:1355)
at com.hypirion.io.Pipe.join(Pipe.java:120)
at leiningen.core.eval$sh.doInvoke(eval.clj:183)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:630)
at leiningen.core.eval$fn__5830.invoke(eval.clj:253)
at clojure.lang.MultiFn.invoke(MultiFn.java:233)
at leiningen.core.eval$eval_in_project.invoke(eval.clj:356)
at clojure.lang.AFn.applyToHelper(AFn.java:160)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.core$apply.invoke(core.clj:632)
at leiningen.repl$repl.doInvoke(repl.clj:322)
at clojure.lang.RestFn.invoke(RestFn.java:425)
at clojure.lang.Var.invoke(Var.java:383)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.Var.applyTo(Var.java:700)
at clojure.core$apply.invoke(core.clj:632)
at leiningen.core.main$partial_task$fn__6030.doInvoke(main.clj:261)
at clojure.lang.RestFn.applyTo(RestFn.java:139)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:29)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:632)
at leiningen.core.main$apply_task.invoke(main.clj:311)
at leiningen.core.main$resolve_and_apply.invoke(main.clj:317)
at leiningen.core.main$_main$fn__6096.invoke(main.clj:390)
at leiningen.core.main$_main.doInvoke(main.clj:383)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at clojure.lang.Var.invoke(Var.java:383)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.Var.applyTo(Var.java:700)
at clojure.core$apply.invoke(core.clj:630)
at clojure.main$main_opt.invoke(main.clj:316)
at clojure.main$main.doInvoke(main.clj:421)
at clojure.lang.RestFn.invoke(RestFn.java:457)
at clojure.lang.Var.invoke(Var.java:394)
at clojure.lang.AFn.applyToHelper(AFn.java:165)
at clojure.lang.Var.applyTo(Var.java:700)
at clojure.main.main(main.java:37)
"VM Thread" prio=10 tid=0x00007fdb0807b800 nid=0xde8 runnable
"GC task thread#0 (ParallelGC)" prio=10 tid=0x00007fdb0801e800 nid=0xde6 runnable
"GC task thread#1 (ParallelGC)" prio=10 tid=0x00007fdb08020800 nid=0xde7 runnable
"VM Periodic Task Thread" prio=10 tid=0x00007fdb080c1000 nid=0xdef waiting on condition
JNI global references: 192
IRC에서 나에게 귀중한 도움을 준 사람들은 그것이 걸린 곳이 아마도 com.hypirion.io.Pipe.join
일 것이라고 건의했다.또한 제안한 대로
lein run -m clojure.main
을 시도하여 REPL을 성공적으로 시작했습니다.$ lein run -m clojure.main
Clojure 1.7.0
user=>
마지막으로 그는 nrepl이 아니라 일반 리플이 유효하다는 것은 플러그인 사용에 관한 운영체제의 안전성에 관한 것이라고 지적했다.technomancy는emacsen이기 때문에
*Messages*
을 연결하려고 시도할 때도 M-x cider-jack-in
의 내용을 아래에 두었습니다.Making nrepl-create-client-buffer-function local to *nrepl-server issue* while let-bound!
Making nrepl-use-this-as-repl-buffer local to *nrepl-server issue* while let-bound!
Starting nREPL server via lein repl :headless...
nREPL server started on 33012
nREPL: Establishing direct connection to localhost:33012 ...
error in process filter: if: nREPL: Direct connection failed
error in process filter: nREPL: Direct connection failed
모든 그룹에서 linux 사용자를 실수로 삭제한 것을 기억합니다. jack2의 범음을 설정하기 위해 오디오 그룹에 사용자를 추가하려고 했지만, 휠 그룹에 추가했습니다.Archlinux를 다시 설치하고 다시 시도하겠습니다.만약 필요하다면, 나는 다른 정보를 제공하고, 그것을 복구하거나 필요한 정보를 제공할 수 있는 모든 방법을 시도할 수 있다.
이 대사들을 읽어 주셔서 감사합니다!
토론 #1
이것은 문제가 될 수 없습니다. 코드는 stdin/-out/-err를 하위 프로세스로 다시 정할 뿐입니다.만약 이것이 문제라면com.hypirion.io.Pipe.join
도 실패할 것이다.이것은 아마도 인터넷과 관련된 문제일 것이다.만약archlinux를 다시 설치한 후에도 이 문제가 여전히 존재한다면, 나는 당신이
lein run -m clojure.main
이 아니라 lein repl :connect nrepl://localhost:$port
을 시도해서 이것이localhost와 관련된 이상한 문제가 아니라는 것을 검증하기를 바랍니다.lein repl :connect nrepl://127.0.0.1:$port
감사합니다.$ lein repl :headless
nREPL server started on port 33751 on host 127.0.0.1 - nrepl://127.0.0.1:33751
$ lein repl :connect nrepl://localhost:33751
이것은 예외를 일으켰다.Connecting to nREPL at nrepl://localhost:33751
ConnectException Connection refused
java.net.PlainSocketImpl.socketConnect (PlainSocketImpl.java:-2)
java.net.AbstractPlainSocketImpl.doConnect (AbstractPlainSocketImpl.java:339)
java.net.AbstractPlainSocketImpl.connectToAddress (AbstractPlainSocketImpl.java:200)
java.net.AbstractPlainSocketImpl.connect (AbstractPlainSocketImpl.java:182)
java.net.SocksSocketImpl.connect (SocksSocketImpl.java:392)
java.net.Socket.connect (Socket.java:579)
java.net.Socket.connect (Socket.java:528)
java.net.Socket.<init> (Socket.java:425)
java.net.Socket.<init> (Socket.java:208)
clojure.tools.nrepl/connect (nrepl.clj:184)
clojure.core/apply (core.clj:630)
clojure.tools.nrepl/add-socket-connect-method!/fn--10338 (nrepl.clj:224)
Bye for now!
127.0.0.1에서는 다음을 수행할 수 있습니다.$ lein repl :connect nrepl://127.0.0.1:33751
Connecting to nREPL at nrepl://127.0.0.1:33751
REPL-y 0.3.7, nREPL 0.2.10
Clojure 1.7.0
OpenJDK 64-Bit Server VM 1.7.0_91-b01
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)
Results: Stored in vars *1, *2, *3, an exception in *e
user=>
토론 #2
파일의 맨 위에토론 #셋
행을 추가하여 이 문제를 해결할 수 있을 것 같습니다.이 줄이 이미 파일에 있다면, 맨 위로 옮기기만 하면 됩니다.127.0.0.1 localhost
항목을 삭제했을 때, 나도 같은 오류가 발생했는데, 그 중 IPv6 항목이 하나밖에 없었다./etc/hosts
내가 이 일을 할 때 이것은 #2000과 관련이 있는 것 같다.건의해 주셔서 감사합니다.상단에는
127.0.0.1
이 있고 토론 #4
이 추가되어 재부팅되어 이제 작동할 수 있습니다.$ lein repl
nREPL server started on port 37017 on host 127.0.0.1 - nrepl://127.0.0.1:37017
REPL-y 0.3.7, nREPL 0.2.10
Clojure 1.7.0
OpenJDK 64-Bit Server VM 1.7.0_91-b01
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)
Results: Stored in vars *1, *2, *3, an exception in *e
user=>
이마스 사과주 플러그인과도 함께 일한다.이것이archlinux,java,clojure 또는leiningen과 관련이 있는지 모르겠습니다.어쩌면 너는 이 문제를 해결할 수 있을지도 모른다.
너는 첫 번째 시도에서 문제점을 발견했어!
토론 #5
#2000 솔루션도 이 문제를 무료로 해결할 수 있다고 생각합니다.나는 이것을 저것으로 합칠 것이다.Reference
이 문제에 관하여(응답: Archlinux에서 Connexion이 거부됨), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://github.com/technomancy/leiningen/issues/2030텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)