【发布时间】:2014-11-29 08:42:49
【问题描述】:
我在 PyCharm 3.4.1 专业版中有两个纯 python 项目。第一个,我们称它为p(类似于包),其结构为 setuptools 包(即带有 setup.py、所有要求等,但它不会上传到 pypi 或任何其他在线存储库)。第二个,我们称它为s(类似脚本),只是一个带有两个模块的python脚本。
项目s(在 PyCharm 中)配置为使用专用的 virtualenv,我们称之为venv。
我遇到的问题如下:当我像这样在venv 中安装项目(包)p 时:
$ source /path/to/venv/bin/activate
(venv)$ cd /path/to/p
(venv)$ python3 setup.py develop
在项目 s 的 PyCharm 中,import p 语句与消息错误没有名为 p 的模块。但是,当我在s 中运行脚本时,一切都很好,唯一的问题是 PyCharm IDE 抱怨找不到模块。我可以忍受这个,但它很烦人......
为什么会这样?它是 PyCharm 的东西还是与包装相关的东西? 请参阅下面的新闻。
项目/包p具有以下结构:
p/
|
+- p/
| |
| +- __init__.py
| +- other subpackages, modules, etc.
+- setup.py
+- README, DESCRIPTION, setup.cfg, etc.
当我将 PyCharm 项目 p 配置为存在于自己的 virtualenv 中并以开发模式安装在那里时,一切正常。
新闻
这个问题在 PyCharm 5.0.4 中仍然存在。但是,我设法解决了它。
由于某些原因,我不得不从 pypi 安装另一个包。我是通过 PyCharm 完成的,方法是转到 File -> Settings -> Project: -> Project Interpreter,点击绿色的 +,找到包并按下 Install Package 按钮。安装后python3 setup.py develop安装的包被PyCharm很好识别。显然问题在于 PyCharm 没有与现实同步的缓存。
所以新的问题是,PyCharm 是否可以被告知更新其关于使用的 python 环境的缓存?
【问题讨论】:
-
不错!是的,即使在 4.5.4 中,我也可以通过从 pycharm gui 卸载并重新安装随机选择的 pip 包来使其正常工作。
标签: python python-3.x pycharm setuptools