重新安装Mac OS X后npm无法正常工作

 杭ai君浩 发布于 2023-01-18 10:25

我不得不在我的笔记本电脑上重新安装Mac OS X Mavericks.现在npm不起作用.但是,节点仍在笔记本电脑上,而npm在$ PATH中.

christohersmbp3:angular-phonecat christopherspears$ npm install
-bash: npm: command not found
christohersmbp3:angular-phonecat christopherspears$ node --version
v0.10.26
christohersmbp3:angular-phonecat christopherspears$ npm start
-bash: npm: command not found
christohersmbp3:angular-phonecat christopherspears$ echo $PATH
/usr/local/share/python:/Users/christopherspears/.rbenv/bin:/Users/christopherspears/bin:/usr/local/heroku/bin:/usr/local/share/npm/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin

我实际上能够轻松地运行节点:

christohersmbp3:~ christopherspears$ node
> console.log('hello node');
hello node
undefined
> 
(^C again to quit)
> 

关于如何解决这个问题的任何想法,还是我应该重新安装Node.js?

更新:

我一直在尝试卸载并重新安装Node.js,但遇到了一个问题:

christohersmbp3:angular-phonecat christopherspears$ brew uninstall node
Uninstalling /usr/local/Cellar/node/0.10.26...
christohersmbp3:angular-phonecat christopherspears$ brew install node
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/node-0.10.26.mavericks.bottle.tar.gz
######################################################################## 100.0%
==> Pouring node-0.10.26.mavericks.bottle.tar.gz
==> Caveats
Bash completion has been installed to:
  /usr/local/etc/bash_completion.d
Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local
You can try again using:
  brew link node

Possible conflicting files are:
/usr/local/bin/node
/usr/local/include/node/zlib.h
/usr/local/include/node/zconf.h
/usr/local/include/node/v8stdint.h
/usr/local/include/node/v8.h
/usr/local/include/node/v8-testing.h
/usr/local/include/node/v8-profiler.h
/usr/local/include/node/v8-preparser.h
/usr/local/include/node/v8-debug.h
/usr/local/include/node/uv.h
/usr/local/include/node/uv-private/uv-win.h
/usr/local/include/node/uv-private/uv-unix.h
/usr/local/include/node/uv-private/uv-sunos.h
/usr/local/include/node/uv-private/uv-linux.h
/usr/local/include/node/uv-private/uv-darwin.h
/usr/local/include/node/uv-private/uv-bsd.h
/usr/local/include/node/uv-private/tree.h
/usr/local/include/node/uv-private/stdint-msvc2008.h
/usr/local/include/node/uv-private/ngx-queue.h
/usr/local/include/node/openssl/opensslconf.h
/usr/local/include/node/node_version.h
/usr/local/include/node/node_object_wrap.h
/usr/local/include/node/node_internals.h
/usr/local/include/node/node_buffer.h
/usr/local/include/node/node.h
/usr/local/include/node/nameser.h
/usr/local/include/node/config.gypi
/usr/local/include/node/common.gypi
/usr/local/include/node/ares_version.h
/usr/local/include/node/ares.h
/usr/local/share/man/man1/node.1
/usr/local/lib/dtrace/node.d
Warning: The post-install step did not complete successfully
You can try again using `brew postinstall node`
==> Summary
  /usr/local/Cellar/node/0.10.26: 1523 files, 18M
christohersmbp3:angular-phonecat christopherspears$ brew link node
Linking /usr/local/Cellar/node/0.10.26... 
Error: Could not symlink bin/node
Target /usr/local/bin/node
already exists. You may want to remove it:
  rm /usr/local/bin/node

To force the link and overwrite all conflicting files:
  brew link --overwrite node

To list all files that would be deleted:
  brew link --overwrite --dry-run node
christohersmbp3:angular-phonecat christopherspears$ brew link --overwrite node
Linking /usr/local/Cellar/node/0.10.26... 135 symlinks created
christohersmbp3:angular-phonecat christopherspears$ brew postinstall node
Error: Permission denied - /usr/local/lib/node_modules/npm/AUTHORS

我看了一眼文件夹:

christohersmbp3:npm christopherspears$ pwd
/usr/local/lib/node_modules/npm
christohersmbp3:npm christopherspears$ ll
total 112
-rw-r--r--   1 24561              staff  5759 Feb 18 14:59 AUTHORS
-rw-rw-r--   1 24561              staff   380 Feb 18 14:59 CONTRIBUTING.md
-rw-r--r--   1 24561              staff  9862 Feb 18 14:59 LICENSE
-rw-r--r--   1 24561              staff  6178 Jan 28 19:21 Makefile
-rw-r--r--   1 24561              staff  7623 Feb 18 14:59 README.md
drwxr-xr-x   7 christopherspears  staff   238 Apr  6 15:54 bin/
-rwxr-xr-x   1 24561              staff    48 Jan 28 19:21 cli.js*
-rwxr-xr-x   1 24561              staff   521 Jan 28 19:21 configure*
drwxr-xr-x   6 christopherspears  staff   204 Mar  7 22:32 doc/
drwxr-xr-x   9 christopherspears  staff   306 Apr  6 15:54 html/
drwxr-xr-x  55 christopherspears  staff  1870 Apr  6 15:54 lib/
-rw-rw-r--   1 24561              staff   156 Jan 28 19:21 make.bat
drwxr-xr-x   6 christopherspears  staff   204 Mar  7 22:32 man/
drwxr-xr-x  51 christopherspears  staff  1734 Mar  7 22:32 node_modules/
-rw-r--r--   1 24561              staff  3449 Feb 18 14:59 package.json
drwxr-xr-x   8 christopherspears  staff   272 Apr  6 15:54 scripts/
drwxr-xr-x   9 24561              staff   306 Apr  6 15:54 test/

我应该将所有者从24561更改为christopherspears吗?

更新:

我确实将AUTHORS文件的所有者更改为christopherspears.现在我收到此错误:

christohersmbp3:angular-phonecat christopherspears$ brew postinstall node
Error: Permission denied - /usr/local/lib/node_modules/npm/bin/node-gyp-bin/node-gyp

看起来像是同一个问题:

christohersmbp3:node-gyp-bin christopherspears$ ll
total 16
-rwxr-xr-x  1 24561  staff  89 Jan 28 19:21 node-gyp*
-rwxr-xr-x  1 24561  staff  61 Jan 28 19:21 node-gyp.cmd*

我是否必须为24561拥有的所有文件执行此操作?我希望不是.

更新:

啊.太蹩脚了.看起来我被要求将所有者从24561更改为我的用户名.为什么主人首先设置为24561?

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有