2013-02-12 48 views
52

Ho installato Node.js sul mio Windows 7 x64 macchina di sviluppo, il modo manuale:Come posso modificare il percorso della cache per npm (o disabilitare completamente la cache) su Windows?

mkdir C:\Devel\nodejs 
cd C:\Devel\nodejs 
set NODE_PATH=%CD% 
setx /M PATH "%PATH%;%NODE_PATH%" 
setx /M NODE_PATH "%NODE_PATH%\node_modules" 

Ho messo il principale node x64 binary insieme npm package manager in C:\Devel\nodejs. Funziona come un fascino e posso aggiornare il file binario principale senza occuparmi dell'installer.

L'unico problema che non riesco a risolvere è lo spostamento della cartella cache. Quando si installa un pacchetto locale:

npm install express 

... cache viene posto sotto la cartella %APP_DATA%\npm-cache. Mi piacerebbe cambiarlo in:

C:\Devel\nodejs\npm-cache

Come posso cambiare la cartella di cache NPM, o disattivare completamente?

+0

la posizione non dovrebbe essere:% appdata% \ NPM-cache – arni

risposta

102

È possibile modificare la cartella della cache di npm utilizzando la riga di comando npm. (Vedi: https://npmjs.org/doc/config.html e più specificamente https://www.npmjs.org/doc/misc/npm-config.html)

così si potrebbe desiderare di provare questo comando:

> npm config set cache C:\Devel\nodejs\npm-cache --global 
+2

Si noti inoltre che se si' andando sul percorso npmrc, il file npmrc globale non si trova direttamente in $ PREFIX, ma in $ PREFIX \ etc –

+3

Quando si fa questo su Windows 7 usando Cygwin ho dovuto aggiungere una barra in avanti davanti a ogni barra rovesciata per evitare che i backslash vengano rimossi. –

+7

Dopo l'esecuzione di un 'npm config list' per verificare l'impostazione corretta – kampsj

0

Inoltre, ho trovato che l'uso di un comando di aggiornamento lavori anche. Ad esempio: "npm update npm". Senza virgolette. Infine, si può controllare la loro directory npm-cache per vedere se viene riempita o meno.

5

È inoltre possibile impostare una variabile di ambiente con export npm_config_cache=/path/to/cache (Unix) o set npm_config_cache=C:\path\to\cache (Win) in alternativa a npm config set (questo è vero per tutte le opzioni di configurazione in npm).


per chiunque utilizzi finestra mobile è possibile aggiungere l'env var in fase di esecuzione con:

docker run -e npm_config_cache=/path/to/cache mydockerimage:tag

+0

Questo è perfetto per l'uso nella finestra mobile. Grazie – velop

Problemi correlati