2014-12-07 10 views

risposta

92

Edit: Sembra che nuovi installatori non hanno questo problema più, vedere this answer da Parag Meshram come la mia risposta è probabilmente obsoleta adesso.

risposta originale:

questa procedura, a stretto contatto:

  • http://nodejs.org/download/ scaricare la versione a 64 bit, 32 è per hipsters
  • Installarlo ovunque si desideri, per impostazione predefinita: C:\Program Files\nodejs
  • Pannello di controllo -> Sistema -> Impostazioni di sistema avanzate -> Variabili d'ambiente
  • Selezionare PATH e scegliere di modificarlo.

Se la variabile PATH è empty, modificarlo a questo: C:\Users\{YOUR USERNAME HERE}\AppData\Roaming\npm;C:\Program Files\nodejs

Se la variabile PATH contiene già C:\Users\{YOUR USERNAME HERE}\AppData\Roaming\npm, aggiungere il seguente subito dopo: ;C:\Program Files\nodejs

Se la variabile PATH contiene informazioni, ma nulla per quanto riguarda npm, aggiungere questo alla fine del PERCORSO: ;C:\Users\{YOUR USERNAME HERE}\AppData\Roaming\npm;C:\Program Files\nodejs

Ora che la variabile PATH è impostata correttamente, si incontreranno ancora errori. Accedi manualmente alla directory AppData e scoprirai che non esiste una directory npm all'interno di Roaming. Crea manualmente questa directory.

Riavviare il prompt dei comandi e npm funzionerà ora.

+0

questa soluzione funziona su tutti i build Windows10? – captainrad

+2

@captainrad finora non ho avuto alcun problema, ma non posso essere sicuro di rilascio prima del 7 dicembre –

+1

@captainrad Ha funzionato quando ho copiato i file in C: \ Programmi \ nodejs in C: \ Users \ {YOUR USERNAME QUI} \ AppData \ Roaming \ npm su Windows 10 – Onuralp

52

andare a http://nodejs.org/

e premere il pulsante che dice "Scaricare Per ..."

Questo ti scaricare l'MSI, che farà tutto l'installazione e percorsi per voi (a differenza della risposta selezione)

+1

La mente spiega perché la risposta accettata non ha funzionato per te? –

+9

La risposta accettata mi ha richiesto di immettere manualmente i percorsi che non sono necessari se si esegue il programma di installazione (.msi). – foreyez

+1

Quindi l'installer è stato aggiornato per farlo automaticamente nelle ultime settimane, o sei stato fortunato sul tuo sistema :-) Ne dubito comunque. –

13

In aggiunta alla risposta da @StephanBijzitter vorrei utilizzare le seguenti variabili PATH invece:

%appdata%\npm 
%ProgramFiles%\nodejs 

Così il vostro nuovo PATH sarà simile:

[existing stuff];%appdata%\npm;%ProgramFiles%\nodejs 

Questo ha il vantaggio di essere neiter utente dipende né 32/64bit dipendente.

+0

Questo è ottimo se lo hai installato nel percorso predefinito, ma tieni presente che se non lo facessi, questo servirà solo a ingombrare la variabile PATH. –

2

È necessario eseguire l'installazione come amministratore.

  1. Eseguire il prompt dei comandi come amministratore
  2. directory cd in cui è presente il file MSI
  3. file di avvio msi digitando il nome nel prompt dei comandi
  4. Si dovrebbe essere felice di vedere tutti i comandi nodo di lavoro dal nuovo prompt dei comandi di shell
0

il motivo per cui è necessario modificare l'AppData potrebbe essere:

  1. Node.js non è in grado di gestire un percorso più lungo di 256 caratteri, le finestre tendono ad avere PATH molto lungo.
  2. Se si effettua il login da un ambiente aziendale, il proprio AppData potrebbe trovarsi sul server - non funzionerà. La directory npm deve trovarsi nell'unità locale.

Anche dopo aver fatto che, l'ultima LTE (4.4.4) hanno ancora problemi con Windows 10, ha funzionato per un po 'poi ogni volta che provo a:

$ npm install _some_package_ --global 

Nodo gettare il "FATAL ERRORE CALL_AND_RETRY_LAST Errore di allocazione non riuscita - elaborazione esaurita ". Cerca ancora di trovare una soluzione a questo problema.

L'unica cosa che trovo funziona è eseguire Vagrant o Virtual box, quindi eseguire la riga di comando di Linux (deve corrispondere al percorso) che è una soluzione piuttosto disordinata.

4

I nuovi programmi di installazione (.msi scaricati da https://nodejs.org) hanno l'opzione "Aggiungi al PERCORSO". Di default è selezionato. Assicurati di non deselezionarlo.

Add to PATH

+0

Bene finalmente :-) –

+0

Strano, ho usato questo programma di installazione e sono stati definitivamente controllati. Ho ancora dovuto aggiungere la cartella nodejs nelle variabili di percorso – DerpyNerd

0

Tutto dovrebbe essere installato in% appdata% (C: \ Users \\ AppData \ Roaming), non e 'file di programma.

Ecco perché ...

Il valore di default di installazione MSI mette Node e il NPM che viene con esso in 'file di programma' e aggiunge questo al percorso di sistema, ma imposta il percorso dell'utente per NPM al% appdata % (c: \ utenti [nome utente] \ appdata \ roaming) poiché l'utente non dispone di sufficienti privilegi per scrivere in "file di programma".

Questo crea un disordine in quanto tutti i moduli vanno in% appdata%, e quando si aggiorna NPM stesso - quali stessi NPM consigliano di fare subito - si finisce con due copie: l'originale è ancora in 'file di programma' da NPM impossibile cancellarlo e il nuovo one inn% appdata%.

Ancora peggio, se si eseguono erroneamente operazioni di NPM come amministratore (molto più semplice su Windows quindi su * nix), allora funzionerà sulla copia dei "file di programma" di NPM node_modules. Potenzialmente un vero casino.

Quindi, quando si esegue l'installazione basta puntarlo su% appdata% ed evitare tutto ciò.

E si noti che questo non è niente di strano - è ciò che accadrebbe se si eseguisse l'installer con i soli privilegi dell'utente.