python 模块不能在 PyCharm 中使用 virtualenv

标签 python virtualenv pycharm cx-oracle virtualenvwrapper

目前我有一个使用 virtualenvwrapper 创建的 virtualenv。在那个 virtualenv 中,我使用 pip install cx_Oracle 安装了 cx_Oracle 扩展。

我有一个 python 脚本,它使用来自 cx_Oracle 的多个命令,如连接等。

当运行我的脚本时认为激活的环境 (python script.py) 它工作正常并且没有产生错误。

但是当我尝试在 PyCharm 4 中运行相同的脚本时,它不起作用。我选择了 virtualenv 作为 intrepeter。运行脚本时出现如下错误:

/Users/pgerrits/.virtualenvs/siebelaudit/bin/python3.4 -u /Applications/PyCharm.app/Contents/helpers/pydev/pydev_run_in_console.py 64420 64421 /Users/pgerrits/PycharmProjects/SiebelAudit/Audit/Siebel Audit/scratchpad.py
Running /Users/pgerrits/PycharmProjects/SiebelAudit/Audit/Siebel Audit/scratchpad.py
PyDev console: starting.    
ImportError: dlopen(/Users/pgerrits/.virtualenvs/siebelaudit/lib/python3.4/site-packages/cx_Oracle.so, 2): Library not loaded: /ade/b/3071542110/oracle/rdbms/lib/libclntsh.dylib.11.1
      Referenced from: /Users/pgerrits/.virtualenvs/siebelaudit/lib/python3.4/site-packages/cx_Oracle.so
      Reason: image not found

在启用了 env 的终端中使用相同的命令运行相同的脚本时,我没有收到任何错误。

我已经尝试过以下方法: - 使用脚本为 oracle_home 等添加了 ENV 变量 - 使用 pycharm 环境变量选项添加了环境变量

真烦人,我必须切换到我的 mac 终端才能运行和调试。有没有人知道这里可能是什么问题?

最佳答案

我必须为 ORACLE_HOME 设置环境变量 DYLD_LIBRARY_PATHLD_LIBRARY_PATH 并重新启动 PyCharm 以使 cx_Oracle 正常工作。

Environment Variables

Setting variables

关于python 模块不能在 PyCharm 中使用 virtualenv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28224840/

相关文章:

python - Pycharm 无法从构建流中检索图像 ID

Python - 重叠范围 - 确定唯一位置

Python ASCII 图形绘图

python - 如何像在 SQL 中一样使用 'in' 和 'not in' 过滤 Pandas 数据帧

python - 弹出一个窗口,里面有文字,并在一定时间后自动关闭

python - 使用 Emacs Jedi(在 Anaconda 中)时可以避免使用 virtualenv 吗?

python - Virtualenv myenv 不会在 Ubuntu 18.04 上的 exFAT 硬盘上创建虚拟环境

python 无法使用 virtualenv

python - 如何将 Apache Flink DataSet python API 与 IDE 结合使用,例如Windows 10 上的 PyCharm?

python - 如何在 PEP484 之后的方法参数中设置与类相同的类型?