错误 Firebase 预部署代码 254

Posted

技术标签:

【中文标题】错误 Firebase 预部署代码 254【英文标题】:Error Firebase predeploy code254 【发布时间】:2018-12-20 00:45:40 【问题描述】:

当我想通过设置firebase deploy 来部署我的网站时,请查看此错误

=== Deploying to 'project'...

i  deploying database, functions, hosting
Running command: npm --prefix "%RESOURCE_DIR%" run lint
npm ERR! path /Users/work/Desktop/project/project_2017/project-frontend/%RESOURCE_DIR%/package.json
npm ERR! code ENOENT
npm ERR! errno -2
npm ERR! syscall open
npm ERR! enoent ENOENT: no such file or directory, open '/Users/work/Desktop/project/project_2017/project-frontend/%RESOURCE_DIR%/package.json'
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/work/.npm/_logs/2018-07-11T21_15_01_202Z-debug.log

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

我可以将firebase.json " npm --prefix \"$RESOURCE_DIR\" run lint" 中的参数predeplay 更改为"npm --prefix \"%RESOURCE_DIR %\" run lint"

【问题讨论】:

您是否尝试与使用 Windows 的人共享项目代码? 不,我使用的是 Mac。 我在问您要与之共享此项目的其他人是否在 Windows 上。 是的,项目上有人用windows。 【参考方案1】:

应该是:

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

【讨论】:

【参考方案2】:

可能发生的事情是您项目中的其他人更改了项目firebase.json,该项目适用于 Linux 和 Mac:


  "functions": 
    "predeploy": [
      "npm --prefix \"$RESOURCE_DIR\" run lint",
      "npm --prefix \"$RESOURCE_DIR\" run build"
    ],
    "source": "functions"
  

到此,它适用于 Windows:


  "functions": 
    "predeploy": [
      "npm --prefix \"%RESOURCE_DIR%\" run lint",
      "npm --prefix \"%RESOURCE_DIR%\" run build"
    ],
    "source": "functions"
  

使用一些advice found here on Stack Overflow。造成这种变化的原因是环境变量在 shell 命令中的使用方式不同。

你们两个共享此文件并不是一个好方法,因为你们每个人都有不同的需求。你们中的一个人将不得不同意不签入对此文件的更改,或者你们都将不得不反复撤消彼此的更改。

【讨论】:

以上是关于错误 Firebase 预部署代码 254的主要内容,如果未能解决你的问题,请参考以下文章

Cloud Functions Firebase CLI 预部署错误(打字稿)

node_modules/@angular/fire/firebase.app.module.d.ts 中的错误?

Firebase 存储上传图像不适用于亚马逊火灾(型号:Fire 7)

Firebase SignUp始终出错

Flutter:Fire Base 存储图像上传的后期初始化错误

使用@angular/fire@6.0.3 无法访问firebase.firestore.FieldValue.serverTimestamp()