在同步远程和本地的依赖文件时,无法同步,报出错误事件如下:
Couldn’t refresh skeletons for remote interpreter failed to run generator3/main.py for sftp://root@192.168.79.186:22/root/miniconda3/bin/python, exit code 1, stderr: ----- Traceback (most recent call last): File “/root/.pycharm_helpers/generator3/main.py”, line 172, in main() File “/root/.pycharm_helpers/generator3/main.py”, line 120, in main state_json = json.loads(sys.stdin.readline(), encoding=‘utf-8’) File “/root/miniconda3/lib/python3.9/json/init.py”, line 359, in loads return cls(**kw).decode(s) TypeError: init() got an unexpected keyword argument ‘encoding’ -----
远程和本地的依赖文件无法同步就会直接导致本地的pycharm因为依赖缺失而直接对所编写的代码提示红色,即语法错误,调用函数无法自动补全,无法查看函数内部实现的源码等。
本文在互联网上检索到该篇文章《【已解决】pycharm 远程服务器报错 Couldn‘t refresh skeletons for remote interpreter》描述得非常清晰。
导致上述问题的原因主要有两点:
- 远程服务器上 python 环境的安装地址发生变化,本地与之相匹配的解释器配置并未重新进行配置。
- 远程服务器上使用了 python 3.9 或更新版本,导致 json 函数下参数 encoding 非法。
问题1解决方案 ① 删除远程服务器上的 /home/xxx/.pycharm_helpers 目录, ② 在 pycharm 里重新添加 python interpreter。
问题2解决方案 修改远程服务器上的文件 /home/xxx/.pycharm_helpers/generator3/main.py,删除其中的 encoding=“utf-8” 字段即可。
|