Как изменить путь кэширования для npm (или полностью отключить кеш) в Windows?
Я установил Node.js на мою машину разработки Windows 7 x64, ручной способ:
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"
Я поместил главный node x64 binary вместе с менеджер пакетов npm в C:\Devel\nodejs
. Работает как прелесть, и я могу обновить основной двоичный файл, не имея дело с установщиком.
Единственная проблема, которую я не могу решить, - это перемещение папки кэша. Когда я устанавливаю локальный пакет:
npm install express
... кеш находится в папке %APP_DATA%\npm-cache
. Я хотел бы изменить его на:
C:\Devel\nodejs\npm-cache
Как я могу изменить папку кэша npm или полностью отключить ее?
Ответы
Ответ 1
Вы можете изменить папку кэша npm с помощью командной строки npm
. (см.: https://docs.npmjs.com/misc/config и более конкретно https://docs.npmjs.com/misc/config#cache)
Поэтому вы можете попробовать эту команду:
> npm config set cache C:\Devel\nodejs\npm-cache --global
Ответ 2
Вы также можете установить переменную окружения с помощью export npm_config_cache=/path/to/cache
(Unix) или set npm_config_cache=C:\path\to\cache
(Win) в качестве альтернативы npm config set
(это верно для всех параметров конфигурации в npm).
Для тех, кто использует Docker, вы можете добавить env var во время выполнения с помощью:
docker run -e npm_config_cache=/path/to/cache mydockerimage:tag
Ответ 3
Кроме того, я обнаружил, что запуск команды обновления также работает, например:
npm update npm
Наконец, можно проверить их каталог npm-cache, чтобы увидеть, заполнен он или нет.
Ответ 4
В Windows вы можете просто перейти в нужную папку кэша и сделать npm set cache --global