1 | nvm is not compatible with the npm config "prefix" option: currently set to "/usr/local" |
最近在vscode的终端经常会看到这个警告,nvm ls一下,可以看到,IDE里的终端默认使用的node指向了system。
我们知道,为了开发方便以及版本切换,nodejs基本都是用nvm来安装了,不会直接去官网下载安装文件进行安装,那么指向system的nodejs是哪里来的?
OK,我们看看brew list,可以看到node在brew的安装列表里,不过我们并没有通过brew install node来安装过nodejs。
尝试卸载system的nodejs, brew uninstall node,会得到告警,该node是yarn的依赖,不能卸载,这就对上了,看看怎么解决这个问题。
卸载
yarn和node,然后再安装yarn,同时加上去掉依赖安装参数1
2
3
4$ brew uninstall yarn
$ brew uninstall node
$ brew cleanup --prune-prefix
$ brew install yarn --ignore-dependencies清除
system的node残留文件1
2$ rm -rf /usr/local/lib/node_modules
$ rm /usr/local/bin/npm
重新打开终端,基本上就不会有这个警告出现了。
参考:https://github.com/creationix/nvm/issues/1245#issuecomment-387460769