使用 Nodist 更新 NPM
Posted
技术标签:
【中文标题】使用 Nodist 更新 NPM【英文标题】:Updating NPM with Nodist 【发布时间】:2017-01-11 22:33:24 【问题描述】:我无法更新 npm
,并让它与 Nodist 一起使用。
每当我尝试使用命令更新 npm
时
npm install -g npm
执行后立即出现以下消息:
(node:5304) fs:不支持重新评估本机模块源。 如果您使用的是 graceful-fs 模块,请将其更新到更新的版本。
C:\Program Files (x86)\Nodist\v\nodev6.5.0\npm -> C:\Program Files (x86)\Nodist\v\nodev6.5.0\node_modules\npm\bin\npm-cli. js
npm@3.10.6 C:\Program Files (x86)\Nodist\v\nodev6.5.0\node_modules\npm
在之后做一个npm -v
,给了我以前的版本:
...> npm -v
2.14.10
但是,如果您注意到上面消息中的最后一行,npm@3.10.6
这意味着它正在尝试安装 那个 版本的npm
。
我还遵循了针对 Ubuntu 用户的 this 帖子和针对 Windows 用户的 this 的说明,但它们似乎解决了独立安装 NodeJS
和 NOT NodeJS
+ Nodist 组合的问题.
同时,我想知道 Nodist 本身是否能够让我们更新 npm
,或者换句话说,它是否也像 node
一样对 npm
有任何版本管理功能。
提前感谢您的帮助。
附加信息
我在 Windows 7 上使用 Nodist v0.7.1
。
【问题讨论】:
github.com/marcelklehr/nodist#commands 【参考方案1】:你可以试试nodist npm latest
Nodist 管理 npm 版本以及节点版本。
【讨论】:
【参考方案2】:事实证明,v0.7.2
之前的 Nodist 版本在正确使用 Nodist 设置 npm
时存在问题(请参阅 Nodist changelog)。
执行npm install -g npm
实际上是在Nodist的根安装文件夹中的v-x64
下安装最新版本的npm
- 这不是Nodist本身寻找npm
安装的地方 em>。
Nodist 在\bin
文件夹中查找npm
:
解决方案
-
将
bin
文件夹的路径添加到您的PATH。
cd
到 Nodist 安装 > bin
使用终端的目录,
然后执行:
npm install npm
(当然不是-g
标志)。
或者,如果npm install
在此步骤中不起作用,请复制已安装的npm
并将其粘贴到bin
目录中的node_modules
文件夹中。
作为旁注,请记住在安装 Nodist 之前从 PATH 中删除一些值,我认为这些值可能会导致与全局软件包安装(即带有 -g
标志)与 npm
发生冲突,如下所示:
%appdata%\npm;
或 C:\Users\username\AppData\Roaming\npm;
%ProgramFiles%\nodejs;
【讨论】:
【参考方案3】:我以前也有同样的问题。
您应该使用以下命令nodist npm 6.14.5
,更改您需要的版本。
您可以通过此命令查看更多选项:nodist --help
是我找到答案的地方:
see an example
【讨论】:
以上是关于使用 Nodist 更新 NPM的主要内容,如果未能解决你的问题,请参考以下文章
npm - Semver 版本控制 - 使用插入符号“^”更新包