Windows nvm的安裝使用(及排坑)

指路牌

  • nvm-windows
  • nvm鏡像源設置
  • nvm使用過程中的坑
  • nvm安裝成功,node安裝成功,能工作,但是npm使用時報錯

適用場景

接手祖傳舊代碼,node版本太高導致無法運行成功。或同時需要使用多個版本node。

環境

windows 10 64bit

參考博客

雨臨Lewis -- Windows下完全卸載node.js並安裝node.js的多版本管理工具nvm-windows

蓓蕾心晴 -- windows下nvm安裝node之後npm命令找不到問題解決辦法

背景

不註明環境和版本的教程都是耍流氓,在剛開始接觸一門新技術或者新框架時,我們時常會去搜索別人的hellow world教程,但是很氣的是,按照步驟無論如何都是不成功,
在我碰到的這類的坑,基本都是環境和版本不同導致的.....(除了和網路相關的)

例如最近看的一位前輩關於以太坊教程,和現在還沒爬出坑的接手的一個2年前Angular的項目。本篇是下一篇關於以太坊文章的前置文章,因爲那一篇教程需要使用舊版本的node。

思路

  1. 卸載node
  2. 刪除路徑以及殘留文件
  3. 安裝nvm-windows
  4. 配置鏡像源

步驟

  1. 卸載系統上現有node(如果有)

    此處基於windows下nvm安裝node之後npm命令找不到問題解決辦法,在此基礎上簡化和完善。
    • 在卸載程序中卸載node
    • 在環境變量中刪除所有與node相關的路徑(無論是user級,還是system級)
    • 刪除以下路徑的文件(可能只有部分文件纔有)

      C:Program Files (x86)nodejs
      C:Program Filesnodejs
      C:Users{User}AppDataRoamingnpm
      C:Users{User}AppDataRoamingnpm-cache
      C:Users{User}node_modules (在我電腦上的路徑)
  2. 下載最新版nvm並安裝nvm-setup.zip
  3. 更換鏡像源

路徑 C:\Users\{User}\AppData\Roaming\nvm\settings.txt下添加以下兩條

node_mirror: https://npm.taobao.org/mirrors/node/
npm_mirror: https://npm.taobao.org/mirrors/npm/
此時如果你還仔細觀察,會發現C:\Program Files下的nodejs問家家其實是一個快捷方式,指向的是nvm的安裝路徑C:\Users\i353667\AppData\Roaming\nvm下對應的node版本。
  1. nvm的使用
# get available node version list
    nvm list available
# install specific node version you need
    nvm install The_Version_You_Need
# list the node you have installed in your PC
    nvm list
# switch node version you need 
    nvm use The_Version_You_Need

錯誤處理

在Windows上nvm的常見錯誤解決方案基本都能搜索到,有一個特殊的我沒檢索到的這裏列一下。

  • 現象:nvm install指定版本的node,並切換後,使用node指令正常,比如node --version,但是使用npm指令會報錯,且報錯根據node 版本會不同,但是根本上都是npm找不到。此時如果你打開C:\Users\{User}\AppData\Roaming\nvm\v9.11.1\node_modules,發現沒有npm文件夾,那就是這個問題。
  • 解決方案

卸載當前版本,重新安裝。有時我重複了兩次才成功,成功標誌就是node_modules文件夾下npm文件夾出現,或者命令行調用npm不報錯。

要獲取更多Haytham原創文章,請關注公衆號"許聚龍":
我的微信公衆號

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章