问题描述
当我们要用到pycharm的远程编译器功能时(只有专业版有这个功能),可能需要连接一个ipv6地址的远程编译器,即SSH Interpreter。此时如果直接在host地址填入一个ipv6地址的话,可能会报下面三种错误:
1. java.net.SocketException: Protocol family unavailable" and refuse to connect.
2. SFTP host is invalid
3. Protocol family not supposed
这个其实是JDK的原因,pycharm是java写的。
解决方法
一、 ipv6地址需要用一个方括号括起来,即 [2001:da8:...] 这种格式。
二.、增加ipv6支持:
- 在pycharm中打开 Help | Edit Custom VM Options
- 添加一行 -Djava.net.preferIPv6Addresses=true .
- 重启pycharm。
- 如果还不行 注释掉或删掉
-Djava.net.preferIPv4Addresses=true
如果不删这一行可以的话就别删了,我这是需要删了
认真做完这几步之后应该都可以解决了,如果还是有问题,而你的pycharm版本又非常旧,可能需要升级pycharm版本。
亲测2019.1.3版本没问题