在* nix(OSX涵亏,Linux等)上升級(jí)
您可能需要使用
sudo
前綴這些命令宰睡,尤其是在Linux或OS X上,如果您使用其默認(rèn)安裝程序安裝了Node
气筋。
您可以使用以下方式升級(jí)到最新版本的npm:
npm install -g npm@latest```
或升級(jí)到最新的LTS版本:
npm install -g npm@lts
### 在Windows上升級(jí)
你可以[你可以從這里下載](https://github.com/felixrieseberg/npm-windows-upgrade)或者跟著如下手冊(cè)概述操作
默認(rèn)情況下拆内,`npm`和nodejs一起安裝在`C:\Program Files (x86)\nodejs`。
npm的默認(rèn)安裝包(包括潛在的npm本身)分別存儲(chǔ)在用戶特定的目錄中宠默,這是目錄(`C:\Users\<username>\AppData\Roaming\npm`)麸恍,因?yàn)榘惭b程序在`PATH`中將`C:\Program Files (x86)\nodejs`放在`C:\Users\<username>\AppData\Roaming\npm`之前,它將始終使用安裝了`nodejs`的`npm`版本搀矫,而不是你使用`npm -g install npm@<version>`安裝的`npm`版本抹沪,要解決這個(gè)問題,您可以執(zhí)行以下操作之一
* 選項(xiàng)1:編輯Windows環(huán)境變量的PATH路徑瓤球,將`%appdata%\ npm`放在`%ProgramFiles%\ nodejs`之前融欧。
> 請(qǐng)記住,當(dāng)您對(duì)`PATH`進(jìn)行更改或如何安裝`npm`時(shí)冰垄,需要重新啟動(dòng)`cmd.exe`(并可能重新啟動(dòng)Windows)蹬癌。
* 選項(xiàng)2:刪除兩者
1. `%ProgramFiles%\nodejs\npm`
2. `%ProgramFiles%\nodejs\npm.cmd`
* 選項(xiàng)3:導(dǎo)航到`%ProgramFiles%\ nodejs \ node_modules \ npm`并將`npmrcfile`復(fù)制到另一個(gè)文件夾或桌面。
然后打開cmd.exe并運(yùn)行以下命令:
cd %ProgramFiles%\nodejs
npm install npm@latest
###### 如果在`node.js`安裝程序中安裝了`npm`虹茶,執(zhí)行上述步驟之一后逝薪,執(zhí)行以下操作。
* 選項(xiàng)1或2
進(jìn)入`%ProgramFiles%\ nodejs \ node_modules \ npm`蝴罪,并在新的`npm`文件夾中復(fù)制名為`npmrc`的文件董济,該文件夾應(yīng)為`%appdata%\ npm \ node_modules \ npm`。這將告訴新的`npm`全局安裝的軟件包要门。
* 選項(xiàng)3
將`npmrc`文件復(fù)制回`%ProgramFiles%\ nodejs \ node_modules \ npm`
>(如果您運(yùn)行的是Windows 7虏肾,并且沒有%appdata%\ npm目錄,請(qǐng)參閱下面的內(nèi)容)
運(yùn)行以下命令查看npm將安裝全局包以驗(yàn)證其是否正確
npm config get prefix -g
如果未設(shè)置為`<X>:\Users\<user>\AppData\Roaming\npm`欢搜,則可以運(yùn)行以下命令來更正它:
npm config set prefix "${APPDATA}/npm" -g
順便提一句封豪,如果你希望這個(gè)軟件包不被安裝到你的漫游配置文件中(因?yàn)槟愕墓蚕砭W(wǎng)絡(luò)上有一個(gè)配額,或是使域名登錄或者退出一個(gè)域名)炒瘟,你可以把它放在你本地的應(yīng)用數(shù)據(jù)中:
npm config set prefix "${LOCALAPPDATA}/npm" -g
...以及將`%APPDATA%\npm`復(fù)制到`%LOCALAPPDATA%\npm`(當(dāng)然更新您的%PATH%)吹埠。
### 嘗試清除npm緩存
npm cache clean
原文鏈接:https://github.com/npm/npm/wiki/Troubleshooting#a-brief-note-on-the-built-in-windows-configuration