Firebase CLI:“功能:警告!在 PACKAGE.JSON 中找不到引擎字段。默认为节点 6 运行时。”
Posted
技术标签:
【中文标题】Firebase CLI:“功能:警告!在 PACKAGE.JSON 中找不到引擎字段。默认为节点 6 运行时。”【英文标题】:Firebase CLI: "functions: WARNING! NO ENGINES FIELD FOUND IN PACKAGE.JSON. DEFAULTING TO NODE 6 RUNTIME." 【发布时间】:2019-09-21 11:07:50 【问题描述】:我将 Firebase CLI 升级到了 6.8.0 版。现在,当我部署我的函数时,我会收到如下所示的警告消息:
⚠ 功能:警告!在 PACKAGE.JSON 中未找到任何引擎字段。默认为节点 6 运行时。从 2019 年 6 月 1 日开始,如果 package.json 中未指定引擎字段,则部署将被阻止。要解决此问题,请将以下几行添加到您的 package.json:
"engines":
"node": "6"
我应该怎么做才能避免这个错误信息?
【问题讨论】:
【参考方案1】:Cloud Functions 上的 nodejs 6 运行时现已弃用并被删除,因为 nodejs 6 已过期长期支持 (LTS)。您可以查看节点here的各个版本的LTS时间表。
现在显示该消息是因为 Firebased CLI 之前将节点 6 作为默认值,但它不想破坏您的部署。您必须明确说明要部署的节点版本。您可以听取警告消息的建议并指定节点 6,但由于节点 6 已停产,您应该至少以节点 8 为目标,该节点现已退出测试版。
要指明您想要的节点运行时版本,请编辑您的 package.json 并在其中包含一个新的***子项,如下所示,其中一个子项名为“engines”:
// other configurations here…
"dependencies":
,
// Add an “engines” child to choose a node version, here it’s node 8.
"engines":
"node": "8"
此要求也反映在 documentation 和 Firebase CLI 创建的默认项目模板中。
如果您专门针对节点 6,您将看到此警告消息:
⚠ 函数:将函数部署到已弃用的 Node 6 运行时。 Node 8 可用并且是推荐的运行时。
【讨论】:
以上是关于Firebase CLI:“功能:警告!在 PACKAGE.JSON 中找不到引擎字段。默认为节点 6 运行时。”的主要内容,如果未能解决你的问题,请参考以下文章
在现有 Firebase 项目目录中初始化 firebase CLI 功能
无法使用 Windows 10 安装 Firebase 工具 cli