如何解决错误:函数预部署错误:命令以非零退出代码 1 终止

问题描述

正在尝试部署 firebase 功能,但我现在迷路了,无论我尝试什么都不适合我 我已经尝试过 thisthis 以及 thisthis 以及我在 stackoverflow 和其他网站上找到的多种其他解决方案(尝试了我能找到的与此错误相关的所有内容) ,似乎没有什么对我有

我使用的是 Node v14.16.0firebase 工具版本 9.8.0

这是否意味着我缺少 firebase-tools 中的一些软件包?我还多次安装了 firebase-tools 以确保每一个都正确安装,几乎尝试了上述链接中的所有内容,但似乎没有任何效果

这就是我所坚持的:

  13:37  error  Parsing error: Unexpected token =>

✖ 1 problem (1 error,0 warnings)

events.js:292
      throw er; // Unhandled 'error' event
      ^

Error: spawn npm --prefix "C:\Users\r\Desktop\cfnc\functions" run lint ENOENT
    at notFoundError (C:\Users\r\AppData\Roaming\npm\node_modules\firebase-tools\node_modules\cross-env\node_modules\cross-spawn\lib\enoent.js:6:26)
    at verifyENOENT (C:\Users\r\AppData\Roaming\npm\node_modules\firebase-tools\node_modules\cross-env\node_modules\cross-spawn\lib\enoent.js:40:16)
    at ChildProcess.cp.emit (C:\Users\r\AppData\Roaming\npm\node_modules\firebase-tools\node_modules\cross-env\node_modules\cross-spawn\lib\enoent.js:27:25)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:277:12)
Emitted 'error' event on ChildProcess instance at:
    at ChildProcess.cp.emit (C:\Users\r\AppData\Roaming\npm\node_modules\firebase-tools\node_modules\cross-env\node_modules\cross-spawn\lib\enoent.js:30:37)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:277:12) {
  code: 'ENOENT',errno: 'ENOENT',syscall: 'spawn npm --prefix "C:\\Users\\r\\Desktop\\cfnc\\functions" run lint',path: 'npm --prefix "C:\\Users\\r\\Desktop\\cfnc\\functions" run lint',spawnargs: []
}

Error: functions predeploy error: Command terminated with non-zero exit code1

Having trouble? Try firebase [command] --help

有人可以帮我指出这个问题的正确解决方案吗?

谢谢

解决方法

我对您的错误和错误中的部分进行了一些研究:

  path: 'npm --prefix "C:\\Users\\r\\Desktop\\cfnc\\functions" run lint',spawnargs: []

表示 package.json 中没有 lint 脚本。如果您像 this 一样正确地修改了您的包 json:

Linux

"predeploy": [
"npm --prefix \"$RESOURCE_DIR\" run lint"
]

PowerShell

"predeploy": [
"npm --prefix $Env:RESOURCE_DIR run lint"
]

Cmd.exe

"predeploy": [
"npm --prefix %RESOURCE_DIR% run lint"
]

它不起作用我建议您尝试 github 的 thread 上的步骤。分享您的 package.json 也会很有帮助

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...