He instalado Node.js en mi máquina de desarrollo con Windows 7 x64, de forma manual:
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"
Coloqué el binario x64 del nodo principal junto con el administrador de paquetes npm en C:\Devel\nodejs
. Funciona como un encanto y puedo actualizar el binario principal sin tener que lidiar con el instalador.
El único problema que no puedo resolver es mover la carpeta de caché. Cuando instalo un paquete local:
npm install express
... la caché se coloca en la %APP_DATA%\npm-cache
carpeta. Me gustaría cambiarlo a:
C:\Devel\nodejs\npm-cache
¿Cómo puedo cambiar la carpeta de caché npm o deshabilitarla por completo?
Respuestas:
Puede cambiar la carpeta de caché de npm usando la
npm
línea de comando. (ver: https://docs.npmjs.com/misc/config y más específicamente https://docs.npmjs.com/misc/config#cache )Entonces, es posible que desee probar este comando:
fuente
npm config list
para verificar la configuración correctaTambién puede establecer una variable de entorno con
export npm_config_cache=/path/to/cache
(Unix) oset npm_config_cache=C:\path\to\cache
(Win) como alternativa anpm config set
(esto es cierto para todas las opciones de configuración en npm).Para cualquiera que use Docker, puede agregar env var en tiempo de ejecución con:
fuente
También puede hacer lo siguiente:
Para tener la ruta de caché que desee, para un solo paquete mientras lo instala:
Para tener la ruta de caché como desee, para todos los paquetes en package.json:
Simplemente esté en el directorio donde package.json es como de costumbre y haga
Es posible que no encuentre esto en la documentación de npm, pero lo he probado con npm 6 y funciona. Parece que funciona desde npm 5 [Consulte: ¿Cómo especificar la carpeta de caché en npm5 en el comando de instalación?
fuente
Además, descubrí que ejecutar un comando de actualización también funciona, por ejemplo:
Por último, uno puede verificar su directorio npm-cache para ver si se está llenando o no.
fuente
En Windows, simplemente puede acceder a la carpeta de caché deseada y hacer
npm set cache --global
fuente