新安装的包遮蔽了我的包

时间:2017-08-07 21:05:35

标签: python python-2.7 namespaces pip

我有一个本地包pyapp,我可以在其他包中找到它:

$ ln -s ~/src/pyapp/pyapp ~/.virtualenvs/myvenv/lib/python2.7/site-packages/

现在这个设置被打破了,因为

$ pip install --upgrade $(pip list --outdated | cut -f1 -d" ")

~/.virtualenvs/myvenv/lib64/python2.7/site-packages/pyapp中安装了一些内容(注意lib64 vs lib)。

现在我收到这样的错误:

File "blah.py" line....
  from pyapp.application import Application
ImportError: No module named application

解决方案是什么?

  • 请注意,其他内容需要lib64包,因此将我的包阴影设为而不是选项。
  • 重命名我的包成为移动目标(如果我将其重命名为mypack1并且有人发布这样的包并将其作为依赖项安装,该怎么办?)
  • 如果我使用包P1(取决于D1)和P2(取决于D2)以及D1和{的名称,该怎么办? {1}}是一样的吗? How to handle python packages with conflicting names?仅在手动安装两个依赖项时才有帮助。

0 个答案:

没有答案