Fabric ImportError: cannot import name 'isMappingType' with Python 2.7
Fabric ImportError: cannot import name 'isMappingType' with Python 2.7
我正在尝试在本地启动 Fab 和 运行。为什么 Fab 安装到 /Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5
?系统Python版本为2.7.10,确认如下:
Toms-MBP:~ tom$ which python
/usr/local/bin/python
Toms-MBP:~ tom$ python --version
Python 2.7.10
Toms-MBP:~ tom$ head -1 `which fab`
#!/Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5
Toms-MBP:~ tom$ fab
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.5/bin/fab", line 9, in <module>
load_entry_point('Fabric==1.11.1', 'console_scripts', 'fab')()
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pkg_resources/__init__.py", line 558, in load_entry_point
return get_distribution(dist).load_entry_point(group, name)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pkg_resources/__init__.py", line 2682, in load_entry_point
return ep.load()
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pkg_resources/__init__.py", line 2355, in load
return self.resolve()
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pkg_resources/__init__.py", line 2361, in resolve
module = __import__(self.module_name, fromlist=['__name__'], level=0)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/fabric/main.py", line 13, in <module>
from operator import isMappingType
ImportError: cannot import name 'isMappingType'
看起来你没有使用之前配置的 virtualenv,所以我认为系统只是使用到 python
的正常路径,这意味着到 /Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5
.
当我们尝试将 Fabric
与 python3.x
一起使用时,这个错误很常见,因为 Fabric
还没有更新到 python
的这个版本,这真是令人难过。
你需要这个:
pip install fabric3
我正在尝试在本地启动 Fab 和 运行。为什么 Fab 安装到 /Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5
?系统Python版本为2.7.10,确认如下:
Toms-MBP:~ tom$ which python
/usr/local/bin/python
Toms-MBP:~ tom$ python --version
Python 2.7.10
Toms-MBP:~ tom$ head -1 `which fab`
#!/Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5
Toms-MBP:~ tom$ fab
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.5/bin/fab", line 9, in <module>
load_entry_point('Fabric==1.11.1', 'console_scripts', 'fab')()
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pkg_resources/__init__.py", line 558, in load_entry_point
return get_distribution(dist).load_entry_point(group, name)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pkg_resources/__init__.py", line 2682, in load_entry_point
return ep.load()
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pkg_resources/__init__.py", line 2355, in load
return self.resolve()
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pkg_resources/__init__.py", line 2361, in resolve
module = __import__(self.module_name, fromlist=['__name__'], level=0)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/fabric/main.py", line 13, in <module>
from operator import isMappingType
ImportError: cannot import name 'isMappingType'
看起来你没有使用之前配置的 virtualenv,所以我认为系统只是使用到 python
的正常路径,这意味着到 /Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5
.
当我们尝试将 Fabric
与 python3.x
一起使用时,这个错误很常见,因为 Fabric
还没有更新到 python
的这个版本,这真是令人难过。
你需要这个:
pip install fabric3