2015-04-29 18 views
16

Ho installato a livello mondiale due pacchetti NPM "download" e "enigmavirtualbox" tramite linea di comando:globale NPM installato ma non il comando trovato

npm install -g download e npm install -g engimavirtualbox

sto cercando di utilizzarli in un file batch per impacchettare un singolo file .exe dal mio progetto di nodo. Per entrambi, i comandi npm list -g <packagename> generano l'uscita della rispettiva versione, indipendente dalla directory di lavoro attuale.

Tuttavia, all'interno del mio script batch non è possibile trovare i comandi "download" e "enigmavirtualbox".

In esecuzione npm root -g produce C:\Users\<username>\AppData\Roaming\npm\node_modules e guardando all'interno di quella cartella posso vedere che le cartelle per entrambi i pacchetti sono presenti.

quello che ho provato:

  • Modifica npm root come descritto here
  • disinstallare e reinstallare pacchetti
  • Aggiungi env. variabile NODE_PATH in modo che punti a C:\Users\<username>\AppData\Roaming\npm\node_modules
  • Aggiungi C:\Users\<username>\AppData\Roaming\npm\node_modules a PATH env. variabile

La stessa installazione funziona sul mio secondo computer (entrambi eseguono Win7 a 64 bit). C'è qualcosa di sbagliato nell'installazione del mio nodo o cosa sto sbagliando?

+0

https://github.com/npm/npm/wiki/Troubleshooting#upgrading-on-windows – Lonely

risposta

31

I file binari e .cmd eseguibili finiscono in C:\Users\<username>\AppData\Roaming\npm (meno lo node_modules alla fine), quindi aggiungendo quel percorso all'ENV PATH. variabile risolto il problema.

+11

che funziona , anche se forse sarebbe meglio usare un carattere jolly: '% USERPROFILE% \ AppData \ Roaming \ npm'. Questa linea deve precedere qualsiasi percorso npm, nodo o nodojs nella variabile env PATH, in modo che npm possa trovare i pacchetti globali in modo appropriato. – gugol

+0

Ho creato il mio nodo package.json e ho eseguito 'npm install -g' da lì (non l'ho pubblicato perché ne ho bisogno per rimanere privato). Questo mette i dati del pacchetto e le dipendenze in '% appdata% \ npm \ node_modules' ma non c'è il file' .cmd' dove hai detto. – deed02392

2

Se il metodo precedente non funziona quindi utilizzare questo comando per impostare in modo esplicito il percorso

npm config set prefix c:/Users/<username>/AppData/Roaming/npm 
Problemi correlati