comando bower non trovato windows


107

Sto riscontrando enormi problemi cercando di utilizzare bower (per installare la fondazione 5) o ottenere qualsiasi cosa relativa al lavoro sulla riga di comando.

Ho installato

  • rubino 1.9.3
  • git (con l'opzione Esegui dal prompt dei comandi)
  • Nodejs

Ho corso con successo

npm install -g bower grunt-cli
gem install foundation

e questi hanno funzionato bene. Ho cercato nella npm/node_modulesdirectory e posso vedere la bowercartella lì dentro.

Ogni volta che bowerdigito nel cmd, ruby cmdo git bashottengo

comando non riconosciuto

Ho impostato il percorso git nelle variabili di ambiente.

La cosa fastidiosa sono le istruzioni sul sito di pergola. Afferma:

npm install -g bower
bower install

Ebbene questo non funziona!



Recentemente ho scritto un post sul blog su come iniziare con Bower. È semplicissimo e c'è un repository GitHub dove puoi controllare il codice. Forse ti aiuterà: thelifelifebalance.com/llb-web-app-series-part-1-bower
cs_stackX

2
Sono stato bloccato anche su questo per un po '. Tutto è stato impostato, riavviato e persino grugnito ha funzionato mentre bower non sarebbe stato sulla mia nuova macchina Windows 8.1. È stato solo quando sono entrato nella cartella globale npm_modules e sono partito da lì che è diventato "sbloccato". Bower ha quindi lavorato dalla cartella del mio progetto. Ho riavviato e il problema era ancora risolto ... Strana risposta, lo so, ma è andata così per me.
user1889992

Risposte:


247

Anche dopo mi sono imbattuto in questo problema npm install -g bower. Ho risolto il problema aggiungendo la cartella binaria di npm al mio percorso.

Ecco alcuni suggerimenti utili per farlo:

  1. Trovare la posizione dei binari globali NPM: npm config get prefix. Questo percorso potrebbe assomigliare a C:\Users\username\AppData\Roaming\npm(o C:\ProgramData\chocolatey\lib\nodejs.commandline.X.XX.XX\toolsse usi Chocolatey ).
  2. Aggiungi il percorso dal passaggio 1 al tuo percorso.

    • Apri il pannello di controllo di Windows, cerca environment, quindi fai clic su edit environment variables for your accounto Modifica le variabili di ambiente di sistema`.

    • Trova la variabile denominata Patho PATHoppure creane una se non esiste.

    • Incolla qui il percorso dal passaggio 1 ( ;delimitato).

    • Potrebbe essere necessario riavviare la finestra del prompt dei comandi.

  3. Ora dovresti essere in grado di inserire i bowercomandi.


1
Per gli utenti di cioccolato: C: \ ProgramData \ chocolatey \ lib \ nodejs.commandline.0.10.33 \ tools
KimchiMan

Funziona per npm 1.3.2e bower 1.7.9.
Animesh Pandey

Nel mio caso 'C: \ Users \ username \ AppData \ Roaming \ npm' era già impostato in ambiente vairables, tuttavia l'esecuzione del 'npm config get prefix' ha rivelato che il percorso conteneva .ssh (C: \ Users \ username \ .ssh \ AppData \ Roaming \ npm) quindi sovrascrivendo questo nella variabile d'ambiente ha risolto il problema.
Monis Iqbal

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

Solo per avvisare gli altri, questo ha funzionato per me per lo stesso problema che stavo affrontando anche su Jenkins su Windows, al contrario delle molte risposte che indicavano la diagnostica relativa a Jenkins.
Monis Iqbal

19

nel caso questo aiuti.

Sono un npm / bower nooB, ma quello che è successo nel mio caso è stato che stavo usando il tutorial Angular JS, che sembra avere il bower configurato per essere utilizzato tramite npm e NON direttamente dalla riga di comando.

Nota: nel mio caso penso che la mia installazione di bower sia stata incasinata. Ho eseguito questo per sistemare la mia installazione di bower:

npm install -gf bower

Quindi ho modificato il mio file bower.json per aggiungere una nuova libreria che volevo usare (nel mio caso angular-sanitize)

CD nella posizione del mio progetto

cd myProjectPath

Quindi per eseguire bower, ho effettivamente usato l'installazione di npm:

npm install

Questo sembra funzionare bower come pacchetto nodo, che a sua volta scansiona bower.json e installa eventuali pacchetti bower mancanti.

Per eseguire bower come pacchetto npm, aggiungi npmprima del comando bower:

npm bower -v

spero che questo ti aiuti,

Sean


1
Come si fa a "usarlo tramite npm"?
potenza del vapore il

ciao steampowered - ad essere onesti è passato un po 'di tempo da quando ho scritto questo. Penso che intendessi il modo 'normale' di eseguire bower dalla riga di comando: bower ma nel testo sopra stavo usando: npm install
Sean

11

Se le soluzioni di cui sopra non funzionano. Penso che dovresti specificare il percorso assoluto per utilizzare il pergola nel prompt dei comandi. Nella cartella della mia app, chiamo solo

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

Questo è contenuto nel mio bower.cmd. Sembra che le mie finestre non possano riconoscere la variabile ~ dp0,

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

sì, quindi ha funzionato come un'installazione di pergola fantastica, ma ho bisogno che funzioni come installazione di pergola :(
Dragutescu Alexandru

Ho ricevuto un messaggio senza bower.json presente
hfrog713

2

Questo accadrà sicuramente se la tua variabile PATH di Windows si avvicina alla lunghezza di 1024 simboli. Quindi nuovi collegamenti come "C: \ Users \ nomeutente \ AppData \ Roaming \ npm" semplicemente non ci stanno.

Controlla il tuo PERCORSO, rimuovi le cose extra e prova a reinstallare node.js e bower, ecc. Inoltre c'è un modo per aumentare il limite di 1024 lunghezza


1

Come altri hanno menzionato, è necessario aggiungere bower nelle variabili di ambiente, ma il modo più semplice per individuare è semplicemente digitare prima la posizione npm, quindi utilizzare Browse Filee individuare bower sul sistema (è possibile cercarlo anche nella barra di ricerca), perché il la posizione può variare a seconda degli utenti.

campione alla mia fine


1

1. Digita Windows cmd:

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

2. Ricarica cmd


0

Stesso problema. L'ho risolto usando un'altra versione di bower. Funziona quando ho provato a utilizzare la versione 1.2.6

$ npm install -g bower@1.2.6


0

Ho avuto questo problema dopo aver installato Chocolatey 0.9.8.28. Ho provato la maggior parte delle soluzioni elencate qui, ma non sono riuscito a far riconoscere "bower -v" nella riga di comando di Powershell. Questo sembrava un po 'strano poiché l'installazione Chocolatey è "tutto incentrato" su Powershell. Alla fine sono stato in grado di avere successo impostando il percorso in modo che Powershell potesse trovare le impostazioni della variabile PATH aggiornate, ma avevo bisogno di aiuto per capire perché e come farlo, che sto fornendo di seguito:

Dopo aver fallito con Powershell inizialmente, sono stato in grado di passare a una riga di comando DOS standard (non utilizzando cmd / c in PowerShell) ed eseguire con successo tutte le variazioni dell'impostazione del percorso discusse sopra e avere successo nel vedere bower e i comandi bower riconosciuti dalla riga di comando DOS. E la finestra di cmd mostrava il percorso completo aggiornato (C: \ ProgramData \ chocolatey \ lib \ nodejs.commandline.0.10.34 \ tools) - si noti che il numero di versione potrebbe cambiare dall'elenco dell'onorevole KimchiMan.

Questo PATH persisteva chiudendo e aprendo nuove finestre della riga di comando DOS, ma non veniva riconosciuto (mai) in nessuna finestra Powershell.

Quindi ho scoperto la seguente discussione correlata: Imposta le impostazioni del percorso di Powershell.

Ciò indica che Powershell riconosce la versione delle impostazioni del percorso HKLM all'avvio. E 'possibile impostare il percorso SIA nella sessione (non persistente) o nel Registro (persistente). Quanto segue è direttamente da quella discussione.

Questi comandi possono impostare temporaneamente il PERCORSO per una SESSIONE PowerShell:

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

Questi comandi possono impostare il PERCORSO in modo permanente per tutte le nuove sessioni di Powershell:

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

Ma ho già provato a impostare le impostazioni del registro a livello di programmazione e non credo che una o due righe di script PS siano all'altezza del compito. Quindi non ho nemmeno provato questa opzione.

Invece sono andato al pannello di controllo / console di sistema e ho cambiato il percorso attraverso la finestra di dialogo Variabili d'ambiente. Ho notato che tutto lo sforzo che avevo fatto per cambiare il percorso con il PATH impostato in una riga di comando DOS aveva funzionato durante la sessione di Windows, ma la nuova voce del percorso non era stata mantenuta nelle variabili d'ambiente / registro anche se la sessione Dos era in esecuzione come amministratore.

Dopo aver apportato questa modifica tramite il Pannello di controllo, il percorso aggiornato per bower nella cartella degli strumenti di Chococlatey (e presumibilmente tutte le successive installazioni di strumenti) sono stati impostati in modo permanente e bower era disponibile sia nella riga di comando DOS che nella riga di comando Powershell.

spero che questo ti aiuti...


0

64 bit disinstallato e installazione della versione a 32 bit di nodejs insieme a git- 32bit hanno funzionato!


0

Ha avuto lo stesso problema. Ho appena eseguito "npm install -g bower", quindi ho visitato la directory in cui è stato scaricato, nel mio caso la posizione era "C: \ Users \ user \ AppData \ Roaming \ npm \ node_modules \ bower"

Dalla directory ho eseguito bower e tutto funziona correttamente, anche da altre directory

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.