2016-06-30 8 views
9

Computer: MacBook Pro Mitte 2012 läuft El Capitan 10.11.4ImportError: Nein Modul namens yaml | Ansible

Python-Version 2.7.10

Ich habe versucht, ansible von der Quelle zu installieren, und ich habe diese beiden Befehle ausführen (nach die Schritte auf ansibles Dokumentation):

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

und lief dann diese

source ./hacking/env-setup 

ich auch schon diese pac installiert haben KAGes

sudo pip install paramiko PyYAML Jinja2 httplib2 six 

Allerdings, wenn ich versuche, und ansible ausführen, indem sie in das Terminal eingeben, erhalte ich die folgende Fehlermeldung.

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 

Was soll hier gemacht werden?

Antwort

17

Haben Sie ein Yaml-Modul installiert? Wenn nicht, versuchen yaml Installation mit dem folgenden Befehl:

sudo pip install pyyaml 
+0

Ja, ich habe bereits, dass – antong

+0

ansible (2.2.0) cffi (1.7.0) Kryptographie (1.4) Django (1.9.6) enum34 (1.1.6) Flask (0.10.1) httplib2 (0.9.2) IDNA (2.1) ipaddress (1.0.16) itsdangerous (0,24) Jinja2 (2.8) MarkupSafe (0,23) paramiko (2.0.1) pip (1.5.6) pyasn1 (0.1.9) pycparser (2,14) pycrypto (2.6.1) PyYAML (3.11) Setuptools (23.1.0) sechs (1.10.0) vboxapi (1,0) Werkzeug (0.11.2) wsgiref (0.1.2) yolk3k (0,9) (aus der Liste pip) – antong

+0

das Installationsverzeichnis von yaml Dann Das Modul befindet sich wahrscheinlich nicht in sys.path Sie können es überprüfen, indem Sie sys importieren und sys.path drucken – bigdata2

3

@ Antwort des bigdata2 korrekt ist, aber es könnte auch sein, dass es einen Konflikt mit Python 3. So überprüfen pip Version (pip --version), und wenn es Python ausgibt 3 dann:

sudo python -m pip install pyyaml 

So wird es für die gleiche Version wie Python installiert.

3

Hatte das gleiche Problem. Mit @FranMowinckels Antwort vorbeigekommen.

Zuerst habe ich getippt:

pip --version 

es Python ausgegeben 3. Aber, als ich versuchte:

sudo python -m pip install pyyaml 

Ich habe eine Fehlermeldung, dass:

Error: No module named pip

So, endlich läuft :

sudo easy_install pip 

alles hat gut funktioniert. Gehen Sie zurück und läuft:

sudo python -m pip install pyyaml 

(Sie können dies die anderen Module mit all laufen müssen auch) Nun sollten Sie endlich in der Lage sein, Ihren ersten Befehl ausgeführt werden soll, die fehlgeschlagen.

0

Dies sollte funktionieren:

sudo pip install pyyaml  
0

hatte ich dieses Problem, weil ich es mit

sudo pip install pyyaml --upgrade 

sudo -H pip install pyyaml --upgrade 

Deinstallation statt

installiert und neu zu installieren pyyaml ​​das Problem behoben für mich.