当前位置: 首页 > 面试题库 >

如何解决bin / python bootstrap.py -d期间的pkg_resources.VersionConflict错误

松兴邦
2023-03-14
问题内容

我正在尝试使用python plone-devstart.py工具创建一个新的plone环境。我遇到了引导错误。所以我从项目目录中使用了命令bin /
python bootstrap.py -d。它(bin / python bootstrap.py -d命令)之前工作正常,但是现在我收到了类似的错误

oomsys@oomsysmob-6:~/demobrun$ bin/python bootstrap.py -d
Downloading http://pypi.python.org/packages/source/d/distribute/distribute-  
0.6.49.tar.gz
Extracting in /tmp/tmpDqVwYA
Now working in /tmp/tmpDqVwYA/distribute-0.6.49
Building a Distribute egg in /tmp/tmpv4Bzyv
/tmp/tmpv4Bzyv/distribute-0.6.49-py2.7.egg
Traceback (most recent call last):
File "bootstrap.py", line 118, in <module>
ws.require('zc.buildout' + VERSION)
File "build/bdist.linux-i686/egg/pkg_resources.py", line 698, in require
File "build/bdist.linux-i686/egg/pkg_resources.py", line 600, in resolve
pkg_resources.VersionConflict: (setuptools 0.6c11 (/home/oomsys/demobrun  
/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg),    
Requirement.parse('setuptools>=0.7'))

问题答案:

您已经在站点软件包distributesetuptools安装了fork
,但是您bootstrap.py正在尝试安装buildout2.2.0,它使用新的 合并的 setuptools0.7或更新的egg。

distribute分支setuptools已合并到setuptools项目中,并且过渡引起一些麻烦。

您的选择是:

告诉bootstrap使用早期zc.buildout版本

bootstrap.py使用该-v选项运行,强制其坚持使用特定的早期版本:

 $ bin/python bootstrap.py -d -v 2.1.1

2.1.1版的扩展版不会自行升级到2.2或更高版本,并且可以与您distribute提供的setuptoolsegg一起使用。

卸载旧distribute

手动删除所有distribute*pkg_resources.py*setuptools*从文件site-packages目录:

$ rm -rf /home/oomsys/demobrun/lib/python2.7/site-packages/setuptools*
$ rm -rf /home/oomsys/demobrun/lib/python2.7/site-packages/distribute*
$ rm -rf /home/oomsys/demobrun/lib/python2.7/site-packages/pkg_resources.py*

和(可选)setuptools从最新版本重新安装ez_setup.py;当前版本是0.9.6,并且setuptoolsPyPI页面将您链接到该ez_setup.py版本。

您还需要升级bootstrap.py脚本,请参见下文。

使用最近的 virtualenv

1.9版或更高版本virtualenv(发布于2013年3月)使您可以setuptools使用--no- setuptools开关创建一个没有鸡蛋的virtualenv :

$ virtualenv --no-setuptools buildout_env

使用它来创建一个虚拟env python来运行您的bootstrap.py。您仍然还需要升级bootstrap.py。见下文。

升级您的bootstrap.py

对于zc.buildout版本2.2.0及更高版本,bootstrap.py脚本已更新,可以加载setuptools非分支版本。从github获取一个新副本(链接到2分支版本),将其替换为旧版本bootstrap.py,然后再次引导。

确保确保先删除了旧的分叉的,distributesetuptools实际上是假装的,或者使用没有该鸡蛋的虚拟env python运行。往上看。



 类似资料:
  • 我试图更新一个列,但在更新过程中总是有相同的错误,如果我不想禁用“安全更新模式”,我该如何解决这个问题?这是我的查询 错误代码:1175。您使用的是安全更新模式,并且您试图更新一个没有使用键列禁用安全模式的表,请在“首选项”中切换该选项-

  • 我在windows系统中安装了Hadoop。只有namenode和资源管理器服务正在运行。使用jps cmd时,其余服务(如DataNode、SecondaryNameNode和NodeManager守护进程)不可见。在DataNode日志中抛出以下错误; 错误: 有人能给我一个解决办法吗?

  • 我有一个有 7 列的 csv 文件 问题是我试图设置日期时间索引,但它不起作用可能是因为日期和时间是两个单独的列。 代码如下: 错误如下: C:\用户\sydgo\Anaconda3\_locE:/教程/pandas_libsTraceback(最近调用最后一次):文件“C:\用户\sydgo\Anaconda3\lib\站点包\熊猫\核心\索引\_loc”,第2442行,get_loc返回自我。

  • 本文向大家介绍解决scanf_s输入%d%c%d格式错误的问题,包括了解决scanf_s输入%d%c%d格式错误的问题的使用技巧和注意事项,需要的朋友参考一下 例题: 定义变量a,b,c,输入1+2,结果a=1,b=+,c=2 错误实例: 乍一看,没啥问题,但是一运行输入就会报错。 解决方案: 1、使用scanf,上边的代码就没问题 2、如果使用scanf_s,就要加上输入长度,如下 scanf_

  • 问题内容: 我们正在尝试使用VScode将代码部署到FRC机器人,但我们不断收到错误消息: 错误:找不到或加载主类 org.gradle.wrapper.GradleWrapperMain 原因:java.lang.ClassNotFoundException: org.gradle.wrapper.GradleWrapperMain 终端进程终止,退出代码为:1 我们发现其他人也遇到了类似的错误

  • 问题内容: 我连接了VPN,以设置广告资源API来获取产品列表,并且效果很好。一旦我从Web服务获得结果并绑定到UI。当我遇到付款错误时,我也将PayPal与我的make Express结帐应用程序集成在一起。我将servlet用于后端过程。谁能说出解决此问题的方法? 问题答案: 首先,你需要从尝试连接的服务器获取公共证书。这可以通过多种方式完成,例如联系服务器管理员并提出要求,使用OpenSSL