18

我试图安装和切换节点版本,所以我首先使用下面安装 nvm

Administrators-MacBook-Pro:~ user.name$ sudo npm install nvm -g
Password:
npm http GET https://registry.npmjs.org/nvm
npm http 304 https://registry.npmjs.org/nvm
npm http GET https://registry.npmjs.org/mkdirp
npm http 304 https://registry.npmjs.org/mkdirp
/usr/local/bin/nvm -> /usr/local/lib/node_modules/nvm/bin/nvm
nvm@0.0.1 /usr/local/lib/node_modules/nvm
└── mkdirp@0.3.5

在此之后,我尝试执行“nvm ls”来列出节点版本,但它给了我一个错误(如下)。请指教有什么问题

Administrators-MacBook-Pro:~ user.name$ nvm ls

module.js:340
    throw err;
          ^
Error: Cannot find module '/usr/local/lib/node_modules/nvm/bin/nvm-ls'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (/usr/local/lib/node_modules/nvm/bin/nvm:15:1)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Function.Module.runMain (module.js:497:10)
4

6 回答 6

51

我最近在将 nvm 安装为 npm 包(来自https://npmjs.org/package/nvm)后遇到了这个问题。

要解决此问题,请使用https://github.com/creationix/nvm#installation上的说明直接安装 nvm

一旦安装并

source ~/.nvm/nvm.sh

运行(这很重要,因为它使 nvm 在您当前的终端会话中可用),那么您将能够运行

nvm ls

和其他 nvm 命令从您的项目目录成功。

希望这对学习节点有所帮助和欢呼!

于 2013-10-27T12:12:31.493 回答
4

要使用nvm命令,您需要如上所述获取它。但是您不想在每次登录后都这样做。

只需将这些行添加到您的~/.bashrc~/.profile~/.zshrc文件中,即可在登录时自动获取它:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"

另请参阅https://github.com/creationix/nvm#manual-install

于 2016-01-11T11:12:20.930 回答
2

只是补充一下,我也使用mac,但安装nvm的非默认shell(zsh)会修改.bash_profile(并添加“source ~/.nvm/nvm.sh”行)

所以我遇到了同样的错误,你需要确保你需要将“source ~/.nvm/nvm.sh”添加到你的shell配置文件中(对我来说是.zshrc)

于 2014-08-19T23:21:31.677 回答
1

@jewel 是正确的:截至 2016 年 1 月(可能更早),安装 NPM 的 nvm 版本似乎不再存在(至少,它的github repo给出了 404)。如果安装了这个旧的、未维护的包,您可能会在键入 nvm 命令时"local" not implemented yet看到错误。Error: Cannot find module './nvm-help'

现在nvm的正确版本来自https://github.com/creationix/nvm

如果您安装了较早的(现在未维护的)版本,您可以通过执行以下步骤重新启动:

  1. npm uninstall -g nvm
  2. 使用上面 github 页面上的安装脚本
于 2016-01-26T17:29:49.817 回答
0

您是否更新了包含 ./node_modules/.bin 的路径?例如:

export PATH=./node_modules/.bin:$PATH
于 2013-07-16T05:40:09.927 回答
0

我的解决方案 nano ~/.zshrc add export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm ")" [ -s "$NVM_DIR/nvm.sh" ] && 。"$NVM_DIR/nvm.sh" # 这会加载 nvm 然后重启终端

于 2020-06-16T04:54:21.293 回答