Firebase:与此版本的 Node.js 不兼容的 node-tar 或 npm
Posted
技术标签:
【中文标题】Firebase:与此版本的 Node.js 不兼容的 node-tar 或 npm【英文标题】:Firebase: node-tar or npm that is incompatible with this version of Node.js 【发布时间】:2018-08-04 10:28:28 【问题描述】:我有一个 Angular 项目,我在构建项目后尝试使用 firebase deploy
。在“托管:准备要上传的 dist 目录”之后,它失败并出现以下错误。
警告:您可能使用的 node-tar 或 npm 版本是 与此版本的 Node.js 不兼容。请使用 与 Node.js 捆绑在一起的 npm 版本,或 npm 版本(> 5.5.1 或 4.0.1)。节点[38453]:../src/node_zlib.cc:437:静态无效 node::(匿名命名空间)::ZCtx::Init(const FunctionCallbackInfo &): 断言 `args.Length() == 7 && "init(windowBits, level, memLevel, strategy, writeResult, writeCallback," "dictionary)"' 失败。1: node::Abort() [/usr/local/bin/node] 2: node::Assert(char const* const () [4]) [/usr/local/bin/node] 3: 节点::(匿名 命名空间)::ZCtx::Init(v8::FunctionCallbackInfo const&) [/usr/local/bin/node] 4: v8::internal::FunctionCallbackArguments::Call(void ()(v8::FunctionCallbackInfo const&)) [/usr/local/bin/node] 5: v8::internal::MaybeHandle v8::内部::(匿名 命名空间)::HandleApiCallHelper(v8::internal::Isolate*, v8::internal::句柄, v8::internal::句柄, v8::internal::句柄, v8::internal::句柄, v8::internal::BuiltinArguments) [/usr/local/bin/node] 6: v8::internal::Builtin_Impl_HandleApiCall(v8::internal::BuiltinArguments, v8::internal::Isolate*) [/usr/local/bin/node] 7: 0x3e504a2842fd 中止 陷阱:6
我检查了我的 node (v.9.6.1) 和 npm (5.6.0) 版本。我试过删除 node 和 npm 并重新安装它们,但没有运气。我一直找不到node-tar版本。
如果有人能帮助我指出正确的方向,我将不胜感激。
【问题讨论】:
这是一个警告,而不是错误。您可以毫无问题地继续前进。 @R.Richards 我已经尝试部署多年(几个小时)并不断收到此消息。 firebase 上的部署历史记录中仍然没有部署。 如果你运行npm ls node-tar
,你会看到你安装的版本吗?
这是一个长镜头,但是...您是否安装了多个 node/npm 副本?我看到github上的当前firebase-tools
在package.json中有"bin": "firebase": "./bin/firebase"
,./bin/firebase
有shebang#!/usr/bin/env node
,所以它应该运行PATH
中称为node
的任何版本的节点,并且node --version
应该是同一个版本。至少如果你在 Linux 上。如果你的firebase版本没有什么不同,这似乎不太可能。如果你在与/usr/bin/env
不同的shell 上使用不同的PATH
,这也可以解释它。
@R.Richards Tar 已安装并运行 npm install tar
脚本。同样的错误。跑npm ls tar
。显示两个版本 tar@2.2.1 作为 angular/firebase 的依赖项,而 tar@4.4.0 作为我刚刚安装的版本。
【参考方案1】:
嘿,伙计,我刚刚遇到了问题。将 node 和 npm 升级到最新版本后,我认为它来自 firebase cli。
我刚刚npm install -g firebase-tools
然后firebase deploy
又开始工作了!
【讨论】:
以上是关于Firebase:与此版本的 Node.js 不兼容的 node-tar 或 npm的主要内容,如果未能解决你的问题,请参考以下文章