node.js - 获取 npm : command not found. 已安装 Node 时如何重新安装 NPM? NPM 去哪儿了?

标签 node.js angularjs npm bower yeoman-generator-angular

我开始Learn to Build Modern Web Apps with the AngularJS Tutorial并且很早就遇到问题。

我已经安装了 Node :

/path/ang-news node -v
v0.10.26

我之前使用过 NPM,但在使用 Yeoman 时遇到了麻烦。不久前我重复了这些步骤,但 Grunt 停止了工作,所以我重新开始。

我跑了:

$ sudo npm install -g generator-angular

所有依赖项都在安装,直到我收到:

npm WARN package.json mongo@0.1.0 No repository field.
npm ERR! peerinvalid The package generator-karma does not satisfy its siblings' peerDependencies requirements!
npm ERR! peerinvalid Peer generator-angular@0.9.1 wants generator-karma@>=0.8.2

然后我尝试更新:

$ npm update -g

我应该以管理员身份运行它。我收到了大量错误消息,这似乎是最相关的:

npm ERR! Please try running this command again as root/Administrator.

npm ERR! System Darwin 13.1.0
npm ERR! command "/usr/local/bin/node" "/usr/local/bin/npm" "update" "-g"
npm ERR! cwd /path/ang-news
npm ERR! node -v v0.10.26
npm ERR! npm -v 1.4.3

npm ERR! not ok code 0

然后我尝试卸载 generator-karma 并重新开始:

$ sudo npm uninstall -g generator-karma

但收到:

sudo: npm: command not found

$ npm -v
-bash: /usr/local/bin/npm: No such file or directory

我的第一个问题是:为什么 NPM 突然消失了?

[编辑:感谢@try-catch-finally 指出在发出命令时在普通用户和 sudo 之间切换时所造成的破坏。原来是我搞砸了我的用户环境,不再安装 NPM。]

我的理解是安装 Node 时会安装 NPM,所以我的第二个问题是:如何只重新安装 NPM?我宁愿不必从头重新安装 Node。

[编辑:感谢@hawk 和@try-catch-finally - 似乎单独安装 NPM 不是一个选项,但有 easy ways to reinstall both .]

最佳答案

  1. 如果你有工作 Node ,你可以重新安装 npm

curl -L https://npmjs.org/install.sh |须藤

  1. 不幸的是 npm update -g 没有达到任何人的预期。解决此问题已在 npm 路线图中,但需要一段时间。

  2. 你几乎不需要全局安装包,除非(像 generator-angulargrunt-cli)你想将该包用作命令.

关于node.js - 获取 npm : command not found. 已安装 Node 时如何重新安装 NPM? NPM 去哪儿了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24378339/

相关文章:

javascript - angularjs 间隔应用 rootscope 中的更改

javascript - $q.all 带有递归?

node.js - 为什么我对 Goodreads API 的请求返回未定义?

node.js - 当 npm install 在控制台中没有显示任何内容时,这意味着什么?

node.js - sequelize 中 findOrCreate() 和 upsert() 的区别

node.js - 是否可以在 Firebase 托管上托管 Express 和 socket.io 应用程序?

javascript - AngularJS ng-repeat 列表动态构建,$index 始终为零

node.js - 需要构建的非缓存 npm 模块

node.js - 使用 keycloak-nodejs-connect 时出错 - "Cannot exchange code for grant in bearer-only mode"

javascript - 如何在实用程序文件中获取已启动的 Express 应用程序的服务器主机和端口