【问题标题】:Pycharms debugger running on a different Python interpreter in subprocessPycharm 调试器在子进程中的不同 Python 解释器上运行
【发布时间】:2015-11-17 10:25:13
【问题描述】:

我有一个配置为在虚拟环境 (Python 2.7.9) 上运行的 PyCharms python 项目。 迟到了,尝试在 PyCharms 上调试项目,这会导致许多模块的导入错误。当从运行相同虚拟环境的命令提示符调用或从 PyCharms“运行”项目时,代码工作得很好。经过检查,我发现由于某种原因 PyCharms 正在调用 Python 2.7.10,并且可能没有安装第三方依赖项!。

我的问题是,PyCharms 在调用子进程时是否有远离虚拟环境的原因,以及解决这个问题的最佳方法是什么。

这是从控制台/pycharms 运行命令时主进程和子进程的输出

print __import__("sys").version

Sys version from Main Process!
2.7.9 (default, Feb 10 2015, 03:28:08) 
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.56)]

Sys version from Sub Process!
2.7.9 (default, Feb 10 2015, 03:28:08) 
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.56)]

这是从 PyCHarms 调试时的输出

print __import__("sys").version

Sys version from Main Process!
2.7.9 (default, Feb 10 2015, 03:28:08) 
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.56)]

Sys version from Sub Process!
2.7.10 (default, Jul 14 2015, 19:46:27) 
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)]

PyCharms 版本: PyCharms 社区版 4.5.3

【问题讨论】:

    标签: python python-2.7 debugging pycharm


    【解决方案1】:

    使用 MacOSX ElCaptian 更新进行更新

    随着 OSX ElCaptian (https://apple.stackexchange.com/questions/193368/what-is-the-rootless-feature-in-el-capitan-really) 引入新的无根功能,不再可能在 /usr/bin 更改 python,而是更好的方法是从运行配置更新 PATH 环境变量(运行->Edit Configuration->Environment->EnvironmentVariable 并将 PATH 变量添加/更新到 /usr/local/bin:$PATH)


    其他方式

    稍加修修补补我就能够解决问题,也许这不是正确的方法,但它确实为我解决了问题。

    PyCharms 在调试时以某种方式使用从 /usr/bin/ 调用 python 具有 python 2.7.10 而不是来自 /usr/local/bin 的 python 2.7.9。由于我的所有路径设置都是正确的并且我不依赖 2.7.10 ,因此我将“/usr/bin/”中的 python 重命名为 python2.7.10 并在“/usr”中创建了一个从 /usr/local/bin 到 python 的符号链接/bin" 文件夹。

    PyCharms 现在像 charm 一样工作,但我仍然不明白为什么它过去引用外部 python 绕过 PATH 设置,以及为什么它在运行子进程时必须在 virtualenv 之外调用 python 解释器。非常感谢您对这些问题提出任何想法或提示。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-10-30
      • 2020-11-04
      • 1970-01-01
      • 1970-01-01
      • 2015-02-12
      • 2016-07-24
      • 2015-09-01
      相关资源
      最近更新 更多