ImportError:没有名为yaml |的模块Ansible

时间:2016-06-30 19:34:55

标签: macos yaml ansible

计算机:MacBook Pro 2012年中期,运行El Capitan 10.11.4

Python版本2.7.10

我一直在尝试从源代码安装ansible,并且我已经运行了这两个命令(按照ansibles文档的步骤):

git clone git://github.com/ansible/ansible.git --recursive
cd ./ansible

然后运行此

source ./hacking/env-setup

我还安装了这些软件包

sudo pip install paramiko PyYAML Jinja2 httplib2 six

但是,如果我尝试通过在终端中键入来运行ansible,我会收到以下错误。

Traceback (most recent call last):
File "/Users/[myusr]/rock/ansible/bin/ansible", line 81, in <module>
from ansible.cli.adhoc import AdHocCLI as mycli
File "/Users/[myusr]/rock/ansible/lib/ansible/cli/__init__.py", line 27, in <module>
import yaml
ImportError: No module named yaml

这里应该做什么?

7 个答案:

答案 0 :(得分:36)

您是否安装了yaml模块?如果没有,请尝试使用以下命令安装yaml:

sudo pip install pyyaml

答案 1 :(得分:6)

有同样的问题。通过使用@ FranMowinckel的回答了解过它。

首先我打字:

pip --version 

它输出了python 3.但是,当我尝试时:

sudo python -m pip install pyyaml

我收到错误说:

  

错误:没有名为pip的模块

所以,最后跑步:

sudo easy_install pip
一切顺利。 回去跑:

sudo python -m pip install pyyaml

(您可能必须与所有其他模块一起运行) 现在你应该最终能够运行失败的初始命令。

答案 2 :(得分:3)

@ bigdata2的答案是正确的,但也可能发生与python 3的冲突。所以,检查点子版本(pip --version),如果它输出python 3那么:

sudo python -m pip install pyyaml

因此它安装的版本与python相同。

答案 3 :(得分:3)

对于python 3.6,您可以使用

进行安装
pip3 install pyyaml

如果导入时出现问题,请执行

pip3 uninstall pyyaml

然后重新安装:

pip3 install pyyaml

答案 4 :(得分:1)

我遇到了这个问题因为我用

安装了它
sudo pip install pyyaml --upgrade

而不是

sudo -H pip install pyyaml --upgrade

卸载并重新安装pyyaml为我解决了这个问题。

答案 5 :(得分:0)

这应该有效:

sudo pip install pyyaml    

答案 6 :(得分:0)

尝试一下

pip install ruamel.yaml