PyCharm无法识别以开发模式安装的模块。
PyCharm无法识别以开发模式安装的模块。
我在PyCharm 3.4.1专业版中有两个纯Python项目。第一个,我们称之为p
(类似于包),是以setuptools包的结构组织的(即带有setup.py,所有要求等等,但它没有上传到pypi或任何其他在线存储库)。第二个,我们称之为s
(类似于脚本),只是一个Python脚本和两个模块。
在PyCharm中,项目s
配置为使用一个专用的虚拟环境,我们称之为venv
。
我遇到的问题是:当我像这样在venv
中安装项目(包)p
时:
$ source /path/to/venv/bin/activate (venv)$ cd /path/to/p (venv)$ python3 setup.py develop
在项目s
中,import p
语句会报错,显示没有名为p的模块。然而,当我在s
中运行脚本时,一切都正常,唯一的问题是PyCharm IDE抱怨找不到该模块。我可以忍受这个问题,但它非常让人恼火...
为什么会发生这种情况?这是PyCharm的问题还是与打包有关的问题?请参见下面的新闻。
项目/包p
的结构如下:
p/ | +- p/ | | | +- __init__.py | +- 其他子包、模块等等 +- setup.py +- README、DESCRIPTION、setup.cfg等等
当我将PyCharm项目p
配置为位于自己的虚拟环境中并以开发模式安装时,一切正常。
新闻
这个问题在PyCharm 5.0.4中仍然存在。然而,我成功解决了它,有点类似。
由于某些原因,我不得不从pypi安装另一个包。我通过PyCharm的File -> Settings -> Project: -> Project Interpreter菜单,点击绿色的+
,找到该包并点击安装包按钮来安装它。安装完成后,通过python3 setup.py develop
安装的包被PyCharm正确识别。显然问题是PyCharm的某些缓存与实际情况不同步。
所以新问题是,能不能告诉PyCharm更新其关于使用的Python环境的缓存?