Comment utiliser le sous-processus.Ouvrir correctement sur Windows XP? - Affiche l'erreur 2 de Windows lors de l'accès à npm

StackOverflow https://stackoverflow.com/questions/9366362

Question

J'essaie d'exécuter un code Python existant et j'ai des problèmes avec celui-ci.

Ce programme nécessite le programme npm installé et qui est installé dans C: \ Program Files \ nodejs \ npm sur mon ordinateur.Lorsque j'exécute le code suivant, dans le cadre de l'ensemble du programme, cela génère des erreurs.

def popen_results(args):
   proc = subprocess.Popen(args, stdout=subprocess.PIPE)
   return proc.communicate()[0]

def installed():
   """docstring for npm_installed"""
   return popen_results(["which", "npm"]).strip()

Voici la pile complète de l'erreur lancée -

Checking for node and dependencies
Traceback (most recent call last):
  File "deploy\deploy.py", line 344, in <module>
    main()
  File "deploy\deploy.py", line 287, in main
    if not check_deps():
  File "deploy\deploy.py", line 201, in check_deps
    return npm.check_dependencies()
  File "C:\Documents and Settings\Sunil\workspace\khan\src\deploy\npm.py", line
38, in check_dependencies
    if not installed():
  File "C:\Documents and Settings\Sunil\workspace\khan\src\deploy\npm.py", line
13, in installed
    return popen_results(["which", "npm"]).strip()
  File "C:\Documents and Settings\Sunil\workspace\khan\src\deploy\npm.py", line
8, in popen_results
    proc = subprocess.Popen(args, stdout=subprocess.PIPE)
  File "C:\python25\lib\subprocess.py", line 594, in __init__
    errread, errwrite)
  File "C:\python25\lib\subprocess.py", line 822, in _execute_child
    startupinfo)
WindowsError: [Error 2] The system cannot find the file specified
Était-ce utile?

La solution

Je suis d'accord avec martineau, il est incapable de trouver lequel.Le script a peut-être été écrit en supposant qu'il allait être exécuté dans un environnement unix qui aurait très probablement la commande «which» disponible et dans le PATH par défaut.Comme il semble que vous l'exécutiez sous Windows, je ne pense pas que cela fonctionnera.

Il semble cependant qu'il existe des alternatives sous Windows, décrites ici: Existe-t-il un équivalent à lequel sous Windows?

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top