我尝试使用npm全局安装Hexo。我跑的时候
npm install -g hexo-cli
我已通知它已安装到/Users/myusername/.node/bin/hexo -> /Users/myusername/.node/lib/node_modules/hexo-cli/bin/hexo
当我运行hexo init blog
并且找不到hexo命令时,会出现问题。
我使用Homebrew安装了Node和npm,因此当我运行which node
和which npm
时,结果分别为/usr/local/bin/node
和/usr/local/bin/npm
。
我认为我在没有自制软件的情况下安装Node时仍然有剩余的文件和目录,但我不想在不完全了解其影响的情况下开始删除内容。我是否可以安全地删除位于/Users/myusername/.node/
目录中的所有文件?我无法弄清楚为什么npm没有安装到正确的目录。
答案 0 :(得分:18)
经过一番挖掘,我发现我的npm前缀变量指向了错误的目录,旧的Node安装留下了。我跑npm config get prefix
看看它指向的位置。
我使用npm config set prefix /usr/local
设置新的前缀值。 Homebrew通过/usr/local/bin
与此目录进行符号链接。我卸载了hexo-cli并通过npm重新安装,现在它完美无缺。
答案 1 :(得分:-1)
在Windows上处理环境变量/路径问题的简单方法:
运行命令:
npm install -g hexo
使用 node.js命令提示符而不是Windows自身提供的cmd
窗口。
答案 2 :(得分:-1)
对于NVM用户
运行nvm use --delete-prefix v10.13.0 --silent
,将v10.13.0
替换为您使用的任何版本的节点。