2017-08-12 37 views
3

當我運行cider-jack-in時,我得到一個SocketExceptionProtocol family unavailable作爲異常消息。'cider-jack-in'以'協議族不可用'中止

lein repl在命令行上運行良好。

我已經網絡搜索,發現沒有匹配包含'cider'和'SocketException',這總是令人擔憂的匹配。在我寫這篇文章時,沒有什麼明顯的出現在尋找github項目,也沒有出現在StackOverflow的可能相關問題列表中。

無論我是否加載項目文件,我都會得到相同的錯誤。

我的Emacs會話往往是非常長時間運行(月),但我已經檢查,並且問題仍然重新啓動後重復相同。

事情我認爲這可能是在玩耍,但我想我可以打折:

  • AFAIK沒有對子網中的主機(此主機當中)有任何接口上配置了IPv6。

  • 這Emacs的是相同的主機作爲Squid代理服務器上運行,但(getenv "no_proxy")返回一個逗號分隔的字符串,包括localhost127.0.0.0/16,所以沒有到代理服務器的連接應要求爲連接到的一部分nrepl服務器在同一主機上。

  • 該主機擁有高度自定義的/etc/hosts文件,但未啓用IPv6地址映射。

換句話說,它應該是一個「純」的IPv4主機。

emacs-version:24.5.1

cider-version:0.15.1快照

操作系統:Linux這個主機4.8.0-2-AMD64#1 SMP的Debian 4.8.11-1(2016-12 -02)x86_64的GNU/Linux的

堆棧跟蹤頭:

error in process sentinel: nrepl-server-sentinel: Could not start nREPL server: Exception in thread "main" java.net.SocketException: Protocol family unavailable, compiling:(/tmp/form-init7765774181037314573.clj:1:73)

有什麼不對?

回答

3

我懷疑蘋果酒是否知道或在意你的系統是純粹的ipv4;它仍然 似乎默認嘗試使用ipv6,顯示在蘋果酒的啓動消息爲 lein ... repl ... :host ::::是ipv6等效符號 到本地主機)。對於我的 的情況,只需在我的系統上啓用ipv6就足夠簡單了,但您可以按照suggestions in this issue的設置將 cider-lein-parameters設置爲repl :headless :host localhost而不是 。

+0

這樣做。謝謝Micah。 –

相關問題