无法执行“sudo npm install --save firebase-admin”

时间:2016-11-29 07:57:41

标签: node.js firebase npm

我无法在终端中执行sudo npm install --save firebase-admin。我得到的错误是:

npm WARN package.json crypto@0.0.3 crypto is also the name of a node core module.
npm WARN package.json express-resource@1.0.0 No repository field.

npm ERR! Error: Invalid Package: expected types/jsonwebtoken but found @types/jsonwebtoken

npm ERR!     at /usr/local/lib/node_modules/npm/lib/cache/add-local-tarball.js:161:14
npm ERR!     at process._tickCallback (node.js:448:13)
npm ERR! If you need help, you may report this *entire* log,
npm ERR! including the npm and node versions, at:
npm ERR!     <http://github.com/npm/npm/issues>

npm ERR! System Darwin 16.1.0
npm ERR! command "/usr/local/bin/node" "/usr/local/bin/npm" "install" "firebase-admin"
npm ERR! cwd /Users/Henry/work_space/ServerMain
npm ERR! node -v v0.10.38
npm ERR! npm -v 1.4.28
npm ERR! not ok code 0

我在types/jsonwebtoken文件中看不到package.json或任何内容。 我怀疑这可能是因为我的节点和firebase已经过时了? 我的节点是1.4.28,我的firebase是2.4.2。如果你们有任何想法,请告诉我们!

1 个答案:

答案 0 :(得分:3)

如果您怀疑自己的Node已过期,那么您是否尝试使用较新版本的Node安装它? - 即What Have You Tried?

首先你的节点不是v1.4.28而是v0.10.38 - 阅读你自己的问题,它就在那里。

节点0.10于2013年3月发布,并于2016年10月停止维护。其当前状态为“生命终止”,因此不要指望它适用于任何新模块,除非这些模块明确声明它们有效使用那个版本的Node(这个版本没有),甚至不希望它能很好地工作。请参阅Node LTS schedule

节点0.10使用非常旧版本的V8(3.14.5.x),因此您甚至无法使用现代JavaScript。相比之下,Node 7.2.0使用V8版本5.4.500.43。请参阅V8 Changelog以了解其中是否已更改。

甚至来自Node 0.12的io.js was forked,因为在0.12中没有足够快地合并V8版本,并且你使用的版本甚至比那个版本更早。

当新版本免费提供时,没有理由使用Node 0.10。

如果您不知道如何安装较新版本的Node,请参阅my tutorialNode website