使用zc.buildout启动旧应用时遇ImportError:无法导入PkgResourcesDeprecationWarning
问题解决方法
问题根源
你遇到的ImportError核心原因有两点:
PkgResourcesDeprecationWarning是setuptools 44.0.0及以上版本才新增的警告类,你当前使用的setuptools 18.3版本过旧,不存在这个类。- zc.buildout 3.0.1属于较新版本,不仅依赖更高版本的setuptools,且3.x系列已停止支持Python 2.7。
具体解决步骤
升级setuptools到Python2.7兼容的最高版本
Python2.7的setuptools最高仅支持到44.1.1,运行以下命令完成升级:pip install setuptools==44.1.1降级zc.buildout到支持Python2.7的版本
zc.buildout 2.x系列是最后支持Python2.7的分支,建议使用官方支持py2的最终稳定版2.13.4:- 要么直接修改bootstrap脚本里的zc.buildout版本号,要么运行bootstrap时指定版本:
python bootstrap-win.py buildout-version=2.13.4清理临时缓存
删除报错中提到的临时目录c:\users\horodysk\appdata\local\temp\tmpnpvxop,避免旧的egg文件干扰,之后重新执行bootstrap脚本。
内容的提问来源于stack exchange,提问作者ehrid
相关产品推荐
相关产品推荐

