nvm与npm config“prefix”选项不兼容:

我想用nvm运行另一个nvm版本,但得到这个错误:

 $ nvm use v4.2.4 nvm is not compatible with the npm config "prefix" option: currently set to "/Users/z/.npm-global" Run `npm config delete prefix` or `nvm use --delete-prefix v4.2.4` to unset it. 

我有我的前缀,目的是避免sudo npm (请参阅https://docs.npmjs.com/getting-started/fixing-npm-permissions )。

有没有什么办法可以使用nvm而不会丢失全局安装包的前缀?

       

网上收集的解决方案 "nvm与npm config“prefix”选项不兼容:"

我有同样的问题,并执行npm config delete prefix不帮助我。
这是我find的解决scheme。
使用brew安装nvm后,在~/.bash_profile添加以下几行:

 export NVM_DIR=~/.nvm . $(brew --prefix nvm)/nvm.sh 

(检查在~/.bashrc~/.profile~/.bash_profile中是否还有其他与nvm相关的命令)
打开一个新的terminal,这次不应该打印任何警告消息。
通过执行nvm --version命令来检查nvm是否工作正常。
之后,使用nvm install node && nvm alias default node安装/重新nvm install node && nvm alias default node

更多信息
我用homebrew安装了nvm,安装成功后,通知我一些重要的信息:

 Please note that upstream has asked us to make explicit managing nvm via Homebrew is unsupported by them and you should check any problems against the standard nvm install method prior to reporting. You should create NVM's working directory if it doesn't exist: mkdir ~/.nvm Add the following to ~/.bash_profile or your desired shell configuration file: export NVM_DIR=~/.nvm . $(brew --prefix nvm)/nvm.sh You can set $NVM_DIR to any location, but leaving it unchanged from /usr/local/Cellar/nvm/0.31.0 will destroy any nvm-installed Node installations upon upgrade/reinstall. 

我忽略了,我面对这个问题:

 nvm is not compatible with the npm config "prefix" option: currently set to "/usr/local/Cellar/nvm/0.31.0/versions/node/v5.7.1" Run `nvm use --delete-prefix v5.7.1 --silent` to unset it. 

我遵循先前的指南(从自制软件/ nvm),之后,我发现我需要重新安装NodeJS。 所以我跑了这个命令:

 nvm install node && nvm alias default node 

和问题去了地狱!

我在使用通过nvm安装的节点时遇到了这个nvm ,通过自制程序安装了nvm 。 我通过运行brew uninstall nvmrm -rf $NVM_DIR ,然后使用官方安装脚本重新安装 rm -rf $NVM_DIR ,然后重新安装我需要的节点版本来解决这个问题。

注:我也有$NVM_DIR挂载和$NVM_DIR链接。 我把它移回到我的家乡。

如果你的home目录挂载在某个地方,可能会出现这个问题,因为nvm不能和符号链接一起工作。 因为我不在乎我的$ NVM_DIR位于哪里,所以我运行这个,所有工作正常:

 $ mv ~/.nvm /tmp/ $ export NVM_DIR="/tmp/.nvm" $ nvm use --delete-prefix v6.9.1 

我正在寻找一个解决scheme的nvm前缀问题find了这个问题(find解决scheme之前)。 这是我的shell“对话框”。 我希望对某个人有用。 我能够设置在这个post的帮助前缀: https : //github.com/npm/npm/issues/6592

当我尝试npm config delete prefixnvm use --delete-prefix使用npm --prefix="" set prefix "" ,我只有:npm ERR! 不好的代码0

请注意,您必须对每个节点版本重复相同的过程,在安装之后,前缀将被设置回(在我的情况下)/ usr / local。

  $ nvm install 0.10 ######################################################################## 100.0% nvm is not compatible with the npm config "prefix" option: currently set to "/usr/local" Run `npm config delete prefix` or `nvm use --delete-prefix v0.10.44` to unset it. $ npm --prefix="" set prefix "" $ nvm use 0.10.44 nvm is not compatible with the npm config "prefix" option: currently set to "/home/john" Run `npm config delete prefix` or `nvm use --delete-prefix v0.10.44` to unset it. $ nvm use --delete-prefix v0.10.44 Now using node v0.10.44 (npm v1.3.10) $ nvm ls v0.10.44 v4.4.3 -> system default -> 4.4.3 (-> v4.4.3) node -> stable (-> v4.4.3) (default) stable -> 4.4 (-> v4.4.3) (default) iojs -> N/A (default) $ npm config get prefix /usr/local 

我的主文件夹移动到Linux上的新驱动器后,我有这个问题。 它通过删除.nvm文件夹并重新安装nvm来解决

注意:
删除,删除或卸载nvm – 只需删除$NVM_DIR文件夹(通常~/.nvm
你可以试试 :
rm -rf ~/.nvm

在这里输入图像描述 我遇到了同样的问题,每次都在terminal上,真的很烦人。 我运行命令到terminal,它是固定的

对于那些尝试从brew中删除nvm

它可能不足以酿造卸载nvm

如果您看到npm前缀仍然是/ usr / local,请运行此命令

sudo rm -rf /usr/local/{lib/node{,/.npm,_modules},bin,share/man}/{npm*,node*,man1/node*}