pycharm ssh interpter没有这样的文件或目录

Don*_*beo 19 python ssh pycharm

我使用macbook pro 15作为本地机器,我有一个运行ubuntu 14.04的远程服务器

我想使用远程intepreter来运行所有的计算,但我想从我的本地机器编写代码.

当我尝试使用pycharm运行一个简单文件时,我收到此错误:

ssh://donbeo@149.157.140.205:22/usr/bin/python3 -u /Users/donbeo/Documents/phd_code/prova.py
bash: line 0: cd: /Users/donbeo/Documents/phd_code: No such file or directory
/usr/bin/python3: can't open file '/Users/donbeo/Documents/phd_code/prova.py': [Errno 2] No such file or directory

Process finished with exit code 2
Run Code Online (Sandbox Code Playgroud)

我看到很少有人报告同样的问题,但到目前为止我还没有找到一个好的答案.大多数问题确实是指较旧版本的pycharm.

很明显,该文件不在我的远程机器中,因为我在本地使用pycharm创建它.我期待pycharm在本地和远程机器之间进行某种同步.

Łuk*_*ski 30

要在远程计算机上执行代码,您必须执行几个步骤

为项目定义远程解释器

  1. 转到文件 - >设置 - >项目:{project_name} - >项目解释器.
  2. 单击cog图标并选择Add Remote.
  3. 添加SSH主机凭据和解释器路径(在远程计算机上).
  4. 因此,您应该在项目解释器下拉选择器中看到新位置,拼写为Python Version (ssh://login@host:port/path/to/interpreter).包列表应填充记录.

定义部署设置

  1. 转到文件 - >设置 - >构建,执行,部署 - >部署
  2. 创建新的部署设置并填写ssh主机配置
    • 类型:SFTP
    • SFTP主机:与解释器主机相同
    • 根路径:将上载文件的路径
  3. 单击"测试SFTP连接"按钮以检查提供的数据是否正确.
  4. 转到映射并配置本地路径和部署路径之间的映射.部署路径相对于根路径 - /相当于/my/root/path,/dir/my/root/path/dir

部署代码

  1. 选择工具 - >部署 - >上传到{部署设置名称}
  2. 上传过程将在后台启动.等待上传完成.

运行你的代码

  1. 右键单击要运行的文件,然后选择"运行".代码应该在远程机器上运行.

  • 我已经解决了.在`run-> edit configurations - > path mappings`中我写了`/ Users/donbeo/Documents =/home/donbeo/Documents` (9认同)

Sal*_*ión 15

有时您可以正确设置所有内容(解释器、部署、路径映射等),但 PyCharm 不断尝试使用远程计算机上的本地路径。

如果发生这种情况,请尝试以下 4 个修复方法:

  1. File->Invalid Caches / Restart

...如果问题仍未解决:

  1. 转到Preferences->Python Interpreter->Path Mappings并检查解释器的路径映射。它们应该看起来或多或少像这样:

SSH 路径映射

...同样,如果上一步不起作用:

  1. 进入Run->Edit Configurations...并检查路径映射是否正确:

PyCharm 路径映射运行/调试

  1. 您还可以尝试将脚本工作目录的本地路径替换为远程路径(就好像您已经在该计算机中一样)。

pycharm ssh 解释器路径

  1. 如果您看到ModuleNotFoundError但连接似乎有效,请转到Run->Edit Configurations...->Environment Variables并将项目的根路径添加到PYTHONPATH变量中。


snr*_*snr 5

确保您的解释器选择为用于编译的SSH ,而不是用于部署的STFP 。

在此输入图像描述


Sid*_*hou 5

我在跑PyCharm 2018.3

问题:

首先,我没有遇到[Errno 2] No such file or directory问题。然后我就突然遇到了这个问题。

当我这样做时,问题出现了:

  • 首选项 -> 项目:{project_name} -> 项目解释器
  • 我没有选择“单击齿轮图标并选择添加远程”,而是从下拉菜单中选择了之前配置的解释器(之前工作正常)

通过执行上述步骤,我遇到了[Errno 2] No such file or directory问题。

原因是该文件夹没有自动同步到远程服务器(一个错误?),我也找不到配置它同步的方法。配置DeploymentPath Mappings确实有效,但体力劳动量太大,而且容易出错。

解决方案:

我所要做的就是添加一个新的远程解释器,尽管之前已经存在相同的配置。(为了安全起见,我确实删除了旧的 ssh 解释器和旧的部署,还删除了 .idea 文件夹)然后一切都按预期工作。

  • 我不需要配置部署
  • 我不需要配置路径映射