【发布时间】:2017-08-11 01:32:08
【问题描述】:
我正在尝试运行 scanpypi 脚本 - Buildroot (2017.02) 的支持脚本,但我收到 ImportError: cannot import name get_importer。
Traceback(最近一次调用最后一次): 文件“./support/scripts/scanpypi”,第 52 行,在 导入设置工具 文件“/usr/local/lib/python2.7/dist-packages/setuptools/init.py”,第 12 行,在 导入 setuptools.version 文件“/usr/local/lib/python2.7/dist-packages/setuptools/version.py”,第 1 行,在 导入 pkg_resources 文件“/usr/local/lib/python2.7/dist-packages/pkg_resources/init.py”,第 40 行,在 从 pkgutil 导入 get_importer ImportError: 无法导入名称 get_importer
我在 scanpypi 脚本的开头添加了以下几行以查看 sys.path
- 导入系统
- 打印(sys.path)
输出:
['/home/timo/bldr_lab/buildroot/support/scripts', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu', ' /usr/lib/python2.7/lib-tk'、'/usr/lib/python2.7/lib-old'、'/usr/lib/python2.7/lib-dynload'、'/usr/local/ lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages']
由于 pkgutil 在 /usr/lib/python2.7 目录中,问题不是路径问题。
我也卸载并重新安装了python2.7、pip和setuptools但没有帮助。
ImportError 可能是什么原因?
【问题讨论】:
-
如果你
python -c 'import pkgutil; print(pkgutil.__file__)会发生什么? -
我也遇到了这个问题。我尝试使用
pudb对其进行调试,但在调试器中它就像一个魅力。我在不同的 Linux 发行版上尝试过scanpypi并且都表现出相同的行为。