web-dev-qa-db-fra.com

commande bower fenêtres non trouvées

J'ai des problèmes énormes à essayer d'utiliser bower (pour installer la fondation 5) ou d'obtenir quoi que ce soit lié au travail sur la ligne de commande.

J'ai installé

  • Ruby 1.9.3
  • git (avec l'option d'invite de la commande run from command)
  • Nodejs

J'ai couru avec succès

npm install -g bower grunt-cli
gem install foundation

et ceux-ci ont fonctionné bien. J'ai regardé dans le répertoire npm/node_modules et je peux voir le dossier bower à l'intérieur.

A chaque fois que je tape bower soit dans le cmd, Ruby cmd ou git bash je reçois

commande non reconnue

J'ai défini le chemin git dans les variables d'environnement.

Ce qui est embêtant, ce sont les instructions sur le site Bower. Il est dit:

npm install -g bower
bower install

Et bien ça ne marche pas!

106
trickydisco

Je suis tombé sur ce problème après npm install -g bower aussi. J'ai résolu le problème en ajoutant le dossier binaire de npm à mon chemin.

Voici quelques astuces utiles pour le faire:

  1. Recherchez l'emplacement de vos fichiers binaires globaux npm: npm config get prefix. Ce chemin peut ressembler à quelque chose comme C:\Users\username\AppData\Roaming\npm (ou C:\ProgramData\chocolatey\lib\nodejs.commandline.X.XX.XX\tools si vous utilisez Chocolatey ).
  2. Ajoutez le chemin de l'étape 1 à votre chemin.

    • Ouvrez le Panneau de configuration de Windows, recherchez environment, puis cliquez sur edit environment variables for your account ou sur Modifier les variables d'environnement système`.

    • Recherchez la variable nommée Path ou PATH, ou créez-en une si elle n'existe pas.

    • Collez le chemin de l'étape 1 ici (; délimité).

    • Vous devrez peut-être redémarrer votre fenêtre d'invite de commande.

  3. Vous devriez maintenant pouvoir entrer des commandes bower.

242
Scott Marchant

au cas où cela aiderait.

Je suis un npm/bower nooB - mais ce qui s’est passé dans mon cas, c’est que j’utilisais le tutoriel Angular JS, qui semble avoir bower a été configuré pour être utilisé via npm =, et PAS via la ligne de commande directement.

Remarque: dans mon cas, je pense que mon installation de bower a été gâchée. J'ai couru ceci pour réparer mon installation de bower:

npm install -gf bower

Ensuite, j'ai édité mon fichier bower.json pour ajouter une nouvelle bibliothèque que je voulais utiliser (dans mon cas, angular-sanitize)

Je CD à l'emplacement de mon projet

cd myProjectPath

Ensuite, pour exécuter Bower, j’ai utilisé nPM install:

npm install

Cela semble exécuter bower en tant que package de nœud, qui analyse à son tour bower.json et installe tous les packages bower manquants.

Pour exécuter bower en tant que package npm, ajoutez npm avant la commande bower:

npm bower -v

j'espère que cela t'aides,

Sean

19
Sean

Si les solutions ci-dessus ne fonctionnent pas. Je pense que vous devriez spécifier le chemin absolu pour utiliser bower dans la commande Invite. Dans mon dossier d'applications, j'appelle simplement

C:\Users\yourusername\AppData\Roaming\npm\bower.cmd install

Ceci est contenu dans mon bower.cmd. Il semble que mes fenêtres ne reconnaissent pas la variable ~ dp0,

node  "C:\Users\yourusername\AppData\Roaming\npm\node_modules\bower\bin\bower" %*
11
MuMug

Cela se produira définitivement si votre variable Windows PATH a une longueur proche de 1024 symboles. Ainsi, les nouveaux liens tels que "C:\Utilisateurs\nom d'utilisateur\AppData\Roaming\npm" ne rentrent tout simplement pas dans cela.

Vérifiez votre PATH, supprimez les éléments supplémentaires et essayez de réinstaller node.js et bower, etc. De plus, il existe un moyen pour augmenter la limite de 1024 longueurs

2
arctica

1. Entrez windows cmd:

for /f %a ('npm config get prefix') do setx path %a

2. Recharger cmd

1
Alex

Comme d’autres ont déjà mentionné, Bower doit être ajouté aux variables d’environnement, mais la méthode la plus simple consiste à taper d’abord votre emplacement npm, puis à utiliser Browse File et à localiser bower sur votre système (vous pouvez le rechercher dans la barre de recherche, par exemple). bien), car l’emplacement peut varier pour différents utilisateurs.

sample in my end

1
AliS

J'ai eu ce problème après l'installation de Chocolatey 0.9.8.28. J'ai essayé la plupart des solutions énumérées ici, mais je n'ai pas pu faire reconnaître "bower -v" dans la ligne de commande de Powershell. Cela semblait un peu étrange puisque l'installation Chocolatey est "tout à propos de" Powershell. Finalement, j'ai réussi à définir le chemin de manière à ce que Powershell puisse trouver les paramètres de variable PATH mis à jour, mais j'avais besoin d'aide pour comprendre pourquoi et comment le faire, ce que je fournis ci-dessous:

Après avoir échoué avec Powershell au départ, j'ai pu accéder à une ligne de commande DOS standard (sans utiliser cmd/c dans powershell) et réussir à exécuter toutes les variations du paramètre de chemin décrites ci-dessus et à reconnaître les commandes bower et bower. par la ligne de commande DOS. Et la fenêtre cmd montrait le chemin complet et mis à jour (C:\ProgramData\chocolatey\lib\nodejs.commandline.0.10.34\tools) - remarquez que le numéro de version peut être différent de celui de l'honorable KimchiMan.

Ce PATH a persisté lors de la fermeture et de l'ouverture de nouvelles fenêtres en ligne de commande DOS, mais il n'a pas été reconnu (jamais) dans aucune des fenêtres Powershell.

Ensuite, j'ai découvert la discussion connexe suivante: Définir les paramètres du chemin Powershell.

Cela indique que Powershell reconnaît la version des paramètres de chemin d'accès HKLM lors du démarrage. ET il est possible de définir le chemin dans la session (non persistant) ou dans le registre (persistant). Ce qui suit est directement issu de cette discussion.

Ces commandes peuvent définir le PATH temporairement pour une session PowerShell:

$env:Path = 'New path'
[System.Environment]::SetEnvironmentVariable('Path', 'New Path', 'Process')

Ces commandes peuvent définir le PATH de manière permanente pour toutes les nouvelles sessions Powershell:

Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Session Manager\Environment' -Name 'Path' -Value 'New Path'
[System.Environment]::SetEnvironmentVariable('Path', 'New Path', 'Machine')

Mais j’ai déjà eu tort de définir des paramètres de registre par programmation auparavant et je ne crois pas qu’une ligne ou deux de script PS soient à la hauteur de la tâche. Donc, je n'ai même pas essayé cette option.

Au lieu de cela, je suis allé à la console Panneau de configuration/Système et ai changé le chemin via la boîte de dialogue Variables d'environnement. J'ai remarqué que tous les efforts que j'avais faits pour changer le chemin avec set PATH dans une ligne de commande DOS avaient fonctionné pendant la session Windows, mais la nouvelle entrée du chemin n'avait pas été conservée dans les Variables d'environnement/Registre, même si la session Dos s'exécutait en tant que administrateur.

Après avoir effectué cette modification via le Panneau de configuration, le chemin mis à jour pour bower dans le dossier des outils de Chococlatey (et probablement pour toutes les installations ultérieures des outils) était défini de manière permanente et bower était disponible à la fois dans la ligne de commande DOS et dans la ligne de commande Powershell.

j'espère que cela t'aides...

0
Stato Machino

Avait le même problème. Je viens juste de lancer "npm install -g bower" puis j'ai visité le répertoire où il a été téléchargé. Dans mon cas, l'emplacement était "C:\Utilisateurs\utilisateur\AppData\Roaming\npm\node_modules\bower".

Depuis le répertoire, j'ai couru Bower, et tout fonctionne bien, même depuis un autre répertoire

0
Nesar

Même problème. Je l'ai résolu en utilisant une autre version de Bower. Cela fonctionne quand j'ai essayé d'utiliser la version 1.2.6

$ npm install -g [email protected]

0
Jayson Cruz

La version 64 bits désinstallée et l'installation de la version 32 bits de nodejs avec git 32 bits ont fonctionné!

0
Satyadev