【发布时间】:2020-03-26 00:49:42
【问题描述】:
我在部署云功能时遇到了 @grpc/grpc-js only works on Node ^8.13.0 || >=10.10.0 错误。我安装了 nvm 并使用 Firebase 工具版本 7.8.1 将节点更新到 12.13.1。我再次运行 npm install 并重新部署了我的云功能并收到以下错误消息:
错误:解析触发器时出错:找不到模块“firebase”
需要堆栈:
/Users/chriscynn/Desktop/pretzly/pretzly/functions/index.js
/usr/local/lib/node_modules/firebase-tools/lib/triggerParser.js
我理解这意味着 node_modules 文件夹中的 firebase 模块不存在,这是真的。所以我输入了npm install firebase 命令,并在最底部完整粘贴了打印出来的内容。
任何帮助将不胜感激,在过去的几天里一直在辛勤工作 - 清理、安装、重新安装、卸载等 - 并且无法找到解决问题的一线希望。我对编程还很陌生,对 CLI 的理解更差。
我现在的package.json 是...
CLI npm install firebase 错误日志
1. grpc@1.20.0 install /Users/me/Desktop/appName/appName/functions/node_modules/grpc
node-pre-gyp install --fallback-to-build --library=static_library
node-pre-gyp WARN 使用 needle 进行 node-pre-gyp https 下载
node-pre-gyp WARN 尝试下载(404): https://node-precompiled-binaries.grpc.io/grpc/v1.20.0/node-v72-darwin-x64-unknown.tar.gz
node-pre-gyp WARN 未找到 grpc@1.20.0 和 node@12.13.1 (node-v72 ABI, unknown) (回退到源码编译 使用节点gyp)
2. “CXX(target) Release/obj.target...”行打印出来
3. ../ext/channel.cc:292:56:错误:函数调用的参数太少, 预期 2,有 1
诠释 try_to_connect = (int)info[0]->等于(Nan::True());/Users/me/Library/Caches/node-gyp/12.13.1/include/node/v8.h:2616:3: 注意:此处声明的“等于” V8_WARN_UNUSED_RESULT 也许 等于(本地上下文,
/Users/me/Library/Caches/node-gyp/12.13.1/include/node/v8config.h:351:31: 注意:从宏“V8_WARN_UNUSED_RESULT”扩展而来 定义 V8_WARN_UNUSED_RESULT 属性((warn_unused_result))
生成 1 个错误。
make: *** [Release/obj.target/grpc_node/ext/channel.o] 错误 1
gyp 错误!构建错误
gyp 错误!堆栈错误:make 失败,退出代码:2
gyp 错误! ChildProcess.onExit 的堆栈 (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
gyp 错误! ChildProcess.emit (events.js:210:5) 的堆栈
gyp 错误! Process.ChildProcess._handle.onexit 处的堆栈 (internal/child_process.js:272:12)
gyp 错误!系统达尔文 18.7.0
gyp 错误!命令 “/usr/local/bin/node” “/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js” “build” “--fallback-to-build” “ --library=static_library""--module=/Users/me/Desktop/appName/appName/functions/node_modules/grpc/src/node/extension_binary/node-v72-darwin-x64-unknown/grpc_node.node""- -module_name=grpc_node" "--module_path=/Users/me/Desktop/appName/appName/functions/node_modules/grpc/src/node/extension_binary/node-v72-darwin-x64-unknown" “--napi_version=5” “--node_abi_napi=napi” “--napi_build_version=0” "--node_napi_label=node-v72"
gyp 错误! cwd /Users/me/Desktop/appName/appName/functions/node_modules/grpc
gyp 错误!节点-v v12.13.1
gyp 错误!节点gyp -v v5.0.5
gyp 错误!不行
node-pre-gyp 错误!构建错误
node-pre-gyp 错误!堆栈错误:无法执行'/usr/local/bin/node /usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --library =static_library --module=/Users/me/Desktop/appName/appName/functions/node_modules/grpc/src/node/extension_binary/node-v72-darwin-x64-unknown/grpc_node.node --module_name=grpc_node --module_path =/Users/me/Desktop/appName/appName/functions/node_modules/grpc/src/node/extension_binary/node-v72-darwin-x64-unknown --napi_version=5 --node_abi_napi=napi --napi_build_version=0 -- node_napi_label=node-v72' (1)
node-pre-gyp 错误! ChildProcess 的堆栈。 (/Users/me/Desktop/appName/appName/functions/node_modules/grpc/node_modules/node-pre-gyp/lib/util/compile.js:83:29)
node-pre-gyp 错误! ChildProcess.emit (events.js:210:5) 的堆栈
node-pre-gyp 错误!堆栈在可能关闭(内部/child_process.js:1021:16)
node-pre-gyp 错误! Process.ChildProcess._handle.onexit (internal/child_process.js:283:5) 的堆栈
node-pre-gyp 错误!系统达尔文 18.7.0
node-pre-gyp 错误!命令“/usr/local/bin/node”“/Users/me/Desktop/appName/appName/functions/node_modules/grpc/node_modules/.bin/node-pre-gyp”“安装”“--fallback-to-构建" "--library=static_library"
node-pre-gyp 错误! cwd /Users/me/Desktop/appName/appName/functions/node_modules/grpc
node-pre-gyp 错误!节点-v v12.13.1
node-pre-gyp 错误! node-pre-gyp -v v0.12.0
node-pre-gyp 错误!不行
无法执行 '/usr/local/bin/node /usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --library =static_library --module=/Users/me/Desktop/appName/appName/functions/node_modules/grpc/src/node/extension_binary/node-v72-darwin-x64-unknown/grpc_node.node --module_name=grpc_node --module_path =/Users/me/Desktop/appName/appName/functions/node_modules/grpc/src/node/extension_binary/node-v72-darwin-x64-unknown --napi_version=5 --node_abi_napi=napi --napi_build_version=0 -- node_napi_label=node-v72' (1)
npm 错误!代码生命周期
npm 错误!错误号 1
npm 错误! grpc@1.20.0 install: node-pre-gyp install --fallback-to-build --library=static_library
npm 错误!退出状态 1
npm 错误! grpc@1.20.0 安装脚本失败。
【问题讨论】:
-
考虑到 Firebase 和 firebase/app 模块的用途是在网络浏览器中使用,而不是在 node 中使用,您打算如何处理它们?通常对于后端,只使用 firebase-admin。
-
@DougStevenson 感谢您的评论。不完全确定我是否正确回答,但通过 index.js 文件,我有 firebase 模块来发送推送通知并更新 firestore 数据。
标签: node.js firebase npm firebase-cloud-messaging node-modules