Node.js 的官網有提供安裝程式給 Windows 使用,不過若你沒有管理員權限的話(像是公司電腦),那麼這方便的方法就行不通了。這邊筆記下手動安裝的方法,同時透過 Git bash 模擬出的類 Linux 環境來設定 Node.js 的啟動路徑到 Git bash 中,最後可以透過它在任何一個資料夾都可以執行 node 和 npm 指令。
切換 Node.js 版本
若你有切換 Node.js 版本的需求,可改使用 nvs 來管理你的 Node.js,因為它不需要 Windows 的系統管理員權限,即可切換版本,詳細內容可點此。
解決情境
1. 當你沒有 Windows 的管理員權限,有些較為底層的檔案變動和設定就無法執行
2. 想要安裝 Node.js 在官方預設路徑外,甚至是外接硬碟、USB 隨身碟
步驟
A. 安裝 Node.js Portable
1 2 3 4 5 |
/*以 D:/nodejs 為例*/ ---/node_modules -node.exe -npm -npm.cmd |
1. 取得 Node.js 的核心檔案,你可以先看一下官網確認一下要裝什麼版本。舉例:若你要安裝 12.19.0 (LTS) 的版本,作業系統為 64 位元。那麼就點選 https://nodejs.org/download/release/latest-v12.x/win-x64/ 下載
2. 將 node.exe 搬到目標資料夾下(這邊以 D:/nodejs 為例)
3. 接下來要安裝 npm ,你會發現這邊的 npm 版本非常舊。不過沒有關係,你可以在確認可以讀取到 npm 版本號、node 版本號後,執行 npm 安裝指令升級到最新版本即可
4. 將 npm-1.4.9.zip 抓取下來,並解壓縮裡面的所有檔案到 D:/nodejs
5. 將 npm-1.4.9.tgz 抓取下來,僅取出 bin/npm 資料夾內的 npm 和 npm.cmd
6. 用 cmd 執行以下指令:
請注意:在執行 npm install npm@latest 的時候,一定要在 nodejs 所在的路徑下。
1 2 3 4 5 |
D: cd nodejs node-v //出現版本號, v12.19.0 npm -v //出現版本號, v1.4.9 npm install npm@latest //更新到最新版本的 npm |
B. 安裝 Git Bash
點入 Git for Windows 下載並安裝即可。
使用方法可以見這篇:Git 學習筆記 (二) : Git Bash 基本操作
C. 新增 ~/.bash_profile & ~/.bashrc 於硬碟根目錄
1. 打開 Git Bash,輸入以下指令:
1 2 3 |
cd.. //數次,直到路徑變成 /c touch ~/.bashrc touch ~/.bash_profile |
2. 用文字編輯器(建議使用如 Notepad++ 而非記事本)打開 .bash_profile
3. .bash_profile 輸入 node.js 路徑
1 2 |
/* export PATH=$PATH:"<nodejs portable 目錄>" */ export PATH=$PATH:"/d/nodejs" |
D. 完工測試
在任意一個資料夾,輸入 node -v 看會不會出現版本號即可。(只能在 Git bash 下使用)
P.S. Windows 下的 cmd ,需要設定 PATH 參數在 OS 中。不過,這需要系統管理員權限才行。
E. 額外補充,免用管理員權限新增 PATH
這樣一來,就可以在 cmd 中作使用。語法如下:
完整版請看此:https://smlpoints.com/guide-how-to-set-permanent-environmental-variables-via-powershell.html
1 2 3 4 |
/* 在 Powershell 中,依照下列格式輸入指令 */ /* set [Environment]::SetEnvironmentVariable("PATH", "<path1;path2;......>", "User") */ [Environment]::SetEnvironmentVariable("PATH", "D:\nodejs", "User") |
F. 額外補充,安裝 NPX
原先 npx 會隨著 npm 的安裝包一起安裝,不過由於手動安裝 Portable 版本的關係,得獨立安裝。npm 上已有好心的大大抽離出單獨的 npx 安裝包。若有需要安裝的話,可執行以下指令:
1 2 3 4 5 |
// 一定要先行切換到 node.js portable 安裝的資料夾底下 // 假設路徑為 D:\nodejs D: cd nodejs npm install npx // 請不要安裝全域版本,否則會出錯 |
參考資料
1. Portable Node.js and NPM on windows.md
2. Use git, ssh and npm on windows with Git Bash
3. Extend $PATH variable in git bash under Windows
4. Git 學習筆記 (二) : Git Bash 基本操作
5. Setting PATH variable in Windows without Admin rights