在專案開發過程中,不同專案使用的nodejs版本不同,有時會因為node版本過高或太低,導致報錯;如何在同一個系統中安裝多個版本的node呢,這裡有兩種方式,往下看選擇適合你的方式吧
NVM 全名為Node Version Manager,是一個管理NodeJS 版本的工具。
NVM 預設只支援Linux 和OS X,不支援Windows,針對Windows 作業系統有2 個替代方案:
nvm-windows
nodist
這裡只介紹使用nvm-windows安裝和切換多版本NodeJS的方法。
nvm use <版本号>
,仍無效(node版本前面都沒有選中的"*"
),需重新安裝1、點選開始選單,找到nodejs的資料夾,點選箭頭處,進行卸載(注意:進行此操作前需結束使用nodejs的專案)
2.檢測系統中是否還存在nodejs
(1) 在開始功能表中進行查看
node -v
進行查看1、nvm下載
安裝包下載地址: https://github .com/coreybutler/nvm-windows/releases
注意:安裝環境win10
系統, 64
位元
2、nvm安裝(註:最好不要裝在C盤)
(1)在指定的文件下新建兩個資料夾,一個用來存放nvm的安裝文件,另一個用來存放node的文件
(2)將下載好的安裝包放入nvm資料夾中,解壓,進行安裝。
注意:安裝時選擇開始新建的資料夾作為指定安裝目錄
(3)選擇nvm安裝路徑,點選下一步
(4)選擇nodejs路徑
(5)點選Install——>點選Finish,安裝完成。
(6)確認是否安裝成功
開啟CMD,輸入指令nvm
指令,安裝成功則如下顯示
(7)到此nvm已經安裝成功
如果有安裝淘寶鏡像的需完成下載鏡像的配置,沒有可跳過
打開nvm文件夾下的settings.txt文件,在最後添加以下代碼(不改,下載node可能會報錯)
arch: 64proxy: node_mirror: https://npm.taobao.org/mirrors/node/ npm_mirror: https://npm.taobao.org/mirrors/npm/
註:
arch:Windows 作業系統位數
proxy:代理,淘寶NodeJS 鏡像和NPM 鏡像
註:
root:NVM 安裝路徑
path:NodeJS 捷徑路徑
1、NVM 安裝成功後,win + r 輸入cmd 新開cmd窗口,可透過nvm -v
指令查看所有可用的指令。
C:>nvm -v Running version 1.1.7. Usage: nvm arch : Show if node is running in 32 or 64 bit mode. nvm install <version> [arch] : The version can be a node.js version or "latest" for the latest stable version. Optionally specify whether to install the 32 or 64 bit version (defaults to system arch). Set [arch] to "all" to install 32 AND 64 bit versions. Add --insecure to the end of this command to bypass SSL validation of the remote download server. nvm list [available] : List the node.js installations. Type "available" at the end to see what can be installed. Aliased as ls. nvm on : Enable node.js version management. nvm off : Disable node.js version management. nvm proxy [url] : Set a proxy to use for downloads. Leave [url] blank to see the current proxy. Set [url] to "none" to remove the proxy. nvm node_mirror [url] : Set the node mirror. Defaults to https://nodejs.org/dist/. Leave [url] blank to use default url. nvm npm_mirror [url] : Set the npm mirror. Defaults to https://github.com/npm/cli/archive/. Leave [url] blank to default url. nvm uninstall <version> : The version must be a specific version. nvm use [version] [arch] : Switch to use the specified version. Optionally specify 32/64bit architecture. nvm use <arch> will continue using the selected version, but switch to 32/64 bit mode. nvm root [path] : Set the directory where nvm should store different versions of node.js. If <path> is not set, the current root will be displayed. nvm version : Displays the current running version of nvm for Windows. Aliased as v.
2、使用nvm install <版本号>
指令安裝指定版本的NodeJS
C:>nvm install v8.16.2 Downloading node.js version 8.16.2 (64-bit)... Complete Downloading npm version 6.4.1... Complete Installing npm v6.4.1... Installation complete. If you want to use this version, type nvm use 8.16.2
3.安裝成功後在NVM 安裝目錄下出現一個v8.16.2 資料夾,使用nvm list
指令查看已安裝NodeJS 清單。
C:>nvm list 8.16.2
4、再次使用nvm install <版本号>
指令安裝另一版本的NodeJS
C:>nvm install v12.8.0 Downloading node.js version 12.8.0 (64-bit)... Complete Creating C:Devnvmtemp Downloading npm version 6.10.2... Complete Installing npm v6.10.2... Installation complete. If you want to use this version, type nvm use 12.8.0
5、使用nvm use <版本号>
切換需要使用的NodeJS 版本,切換成功後可以使用node -v
和npm -v
指令查看是否切換成功。
C:>nvm use v8.16.2 Now using node v8.16.2 (64-bit) C:>node -v v8.16.2 C:>npm -v 6.4.1
這裡要注意使用nvm use <版本号>
時可能出現亂碼的情況
C:>nvm use v8.16.2 exit status 1: ��û���㹻��壕��ִ�д˲�����
不要慌張,不要生氣,這時候用重新打開一個以管理員身份運行cmd窗口就不會出現亂碼的情況,使用nvm use <版本号>
切換需要使用的NodeJS 版本,使用nvm ls
查看所有安裝的node版本,版本號前面帶有*
號的表示目前使用的NodeJS版本。
C:Windowssystem32>nvm use v8.16.2 Now using node v8.16.2 (64-bit) C:Windowssystem32>nvm ls 12.8.0 * 8.16.2 (Currently using 64-bit executable)
6、這裡是一些常用指令匯總:
nvm off // 禁用node.js版本管理(不卸載任何東西) nvm on // 啟用node.js版本管理nvm install <version> // 安裝node.js的命名version是版本號例如:nvm install 8.12.0 nvm uninstall <version> // 卸載node.js是的命令,卸載指定版本的nodejs,當安裝失敗時卸載使用nvm ls // 顯示所有安裝的node.js版本nvm list available // 顯示可以安裝的所有node .js的版本nvm use <version> // 切換到使用指定的nodejs版本nvm v // 顯示nvm版本nvm install stable // 安裝最新穩定版
1、同樣,如果之前有安裝過node,為了避免不必要的麻煩,將其先卸載掉
注意:安裝多個版本的node的時候一定要從低版本開始安裝,如果你先安裝高版本的話會出現許多問題,如果你已經安裝啦,先卸載掉然後進行下面的步驟
2、在安裝node之前,我先選擇一個node安裝目錄,我要安裝到D盤下,所以我在D盤中新建了一個NODE的目錄,並且在裡面建立了一個nodejs8的資料夾,因為我一會要在這個資料夾中安裝8.16.2版本的node
3.開始安裝
node版本可以去node中文網或點選這裡下載
https://nodejs.org/
打開下載好的node8.16.2的安裝包,一直點擊下一步,直到出現安裝路徑,將安裝路徑切換為我們上面新建的nodejs8資料夾路徑: D:toolsNODEnodejs8
,然後一路下一步,直到安裝成功
在開始搜尋框搜環境變量,注意這裡選擇編輯系統環境變數—>進階—>環境變量
在系統變數中點選新建,變數名稱:nodejs,變數值:D:toolsNODEnodejs(即上面存放node的資料夾,這裡先去掉nodejs8後面的8)
點選確定後再係統變數中找到path 變量,選取後點選編輯,然後點選新建,將上方新建系統變數的變數名稱以%变量名%
的形式加入,點選確定
這時候還不行,最關鍵的一點是:我們需要將一開始建的資料夾nodejs8重命名為nodejs
值得注意的是:這裡將nodejs8重命名的一方面是為了與上面配置的環境變數中的變數名匹配(即使用此版本node),另一方面是為了更好的安裝下一個版本(因為在安裝完一個node版本之後如果文件名不修改的話,後面再安裝其他版本的node時無論你安裝到什麼地方,都會把之前的覆蓋掉)
1、檢查
重名之後,然後win+R—>cmd,在指令視窗輸入node -v
查看node 版本,出現版本號說明第一個node版本安裝成功
C:>node -v v8.16.2
2、安裝下一個版本
由於上面已經將安裝的node8.16.2版本的檔案名稱重新命名(防止覆蓋),這時我們只需在同級目錄下新建一個資料夾nodejs12,安裝node12.8.0版本的node(方法同上面安裝node8. 16.2)
重點來了,在安裝了多個版本的node的之後,在我們需要切換版本的時候,只需要將對應版本的資料夾重新命名為nodejs即可
例如:我們先裝了node8.16.2版本的(放在nodejs資料夾下)和node12.8.0版本的(放在nodejs12資料夾下),現在使用的node是8.16.2,那麼要想切換到node12.8.0版本的node,只需更改檔名,將nodejs重新命名為nodejs8,再將nodejs12重新命名為nodejs即可,換句話說就是用哪個版本的node就將哪個版本的node資料夾重新命名為nodejs
此時在開啟命令列窗口,輸入node -v
檢查node版本
C:>node -v v12.8.0
小夥伴兒們你們習慣用哪一種種方式呢?兩種方式你們都學廢了嗎!留言區一起討論一下吧!