#firebase #google-cloud-functions
# #firebase #google-cloud-функции
Вопрос:
Я пытаюсь перейти с узла 6 на узел 8 и следую документам. Я только что обновил свой firebase-tools
и firebase-functions
в командной строке и добавил "engines": { "node": "8" }
в свой файл project / functions package.json
, и я получаю следующие ошибки:
PS C:program filesgitprojectsqmn> firebase deploy
=== Deploying to 'quizmenot-79ee9'...
i deploying storage, firestore, functions, hosting
Running command: npm --prefix "$RESOURCE_DIR" run build
> functions@ build C:program filesgitprojectsqmnfunctions
> tsc
node_modules/firebase-functions/lib/function-builder.d.ts(61,93): error TS1005: ';' expected.
node_modules/firebase-functions/lib/function-builder.d.ts(61,94): error TS1003: Identifier expected.
node_modules/firebase-functions/lib/function-builder.d.ts(61,114): error TS1005: ';' expected.
node_modules/gaxios/build/src/index.d.ts(14,66): error TS1005: '>' expected.
node_modules/gaxios/build/src/index.d.ts(14,103): error TS1109: Expression expected.
npm ERR! code ELIFECYCLE
npm ERR! errno 2
npm ERR! functions@ build: `tsc`
npm ERR! Exit status 2
npm ERR!
npm ERR! Failed at the functions@ build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! C:UsersFiringBlanksAppDataRoamingnpm-cache_logs2019-04-19T05_57_15_561Z-debug.log
Error: functions predeploy error: Command terminated with non-zero exit code2
Дополнительная информация из журнала C:UsersFiringBlanksAppDataRoamingnpm-cache_logs
0 info it worked if it ends with ok
1 verbose cli [ 'C:\Program Files\nodejs\node.exe',
1 verbose cli 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js',
1 verbose cli '--prefix',
1 verbose cli 'C:\program files\git\projects\qmn\functions',
1 verbose cli 'run',
1 verbose cli 'build' ]
2 info using npm@6.4.1
3 info using node@v8.12.0
4 verbose run-script [ 'prebuild', 'build', 'postbuild' ]
5 info lifecycle functions@~prebuild: functions@
6 info lifecycle functions@~build: functions@
7 verbose lifecycle functions@~build: unsafe-perm in lifecycle true
8 verbose lifecycle functions@~build: PATH: C:Program Filesnodejsnode_modulesnpmnode_modulesnpm-lifecyclenode-gyp-bin;C:program filesgitprojectsqmnfunctionsnode_modules.bin;C:WINDOWSsystem32;C:WINDOWS;C:WINDOWSSystem32Wbem;C:WINDOWSSystem32WindowsPowerShellv1.0;C:WINDOWSSystem32OpenSSH;C:Program Filesnodejs;C:Program FilesGitcmd;C:Program FilesGitmingw64bin;C:Program FilesGitusrbin;C:Program FilesNVIDIA CorporationNVIDIA NvDLISR;C:UsersFiringBlanksAppDataLocalMicrosoftWindowsApps;C:UsersFiringBlanksAppDataLocalProgramsMicrosoft VS Codebin;C:UsersFiringBlanksAppDataRoamingnpm;C:UsersFiringBlanksAppDataLocalGoogleCloud SDKgoogle-cloud-sdkbin
9 verbose lifecycle functions@~build: CWD: C:program filesgitprojectsqmnfunctions
10 silly lifecycle functions@~build: Args: [ '/d /s /c', 'tsc' ]
11 silly lifecycle functions@~build: Returned: code: 2 signal: null
12 info lifecycle functions@~build: Failed to exec build script
13 verbose stack Error: functions@ build: `tsc`
13 verbose stack Exit status 2
13 verbose stack at EventEmitter.<anonymous> (C:Program Filesnodejsnode_modulesnpmnode_modulesnpm-lifecycleindex.js:301:16)
13 verbose stack at emitTwo (events.js:126:13)
13 verbose stack at EventEmitter.emit (events.js:214:7)
13 verbose stack at ChildProcess.<anonymous> (C:Program Filesnodejsnode_modulesnpmnode_modulesnpm-lifecyclelibspawn.js:55:14)
13 verbose stack at emitTwo (events.js:126:13)
13 verbose stack at ChildProcess.emit (events.js:214:7)
13 verbose stack at maybeClose (internal/child_process.js:915:16)
13 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:209:5)
14 verbose pkgid functions@
15 verbose cwd C:program filesgitprojectsqmn
16 verbose Windows_NT 10.0.17134
17 verbose argv "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" "--prefix" "C:\program files\git\projects\qmn\functions" "run" "build"
18 verbose node v8.12.0
19 verbose npm v6.4.1
20 error code ELIFECYCLE
21 error errno 2
22 error functions@ build: `tsc`
22 error Exit status 2
23 error Failed at the functions@ build script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 2, true ]
Комментарии:
1. Есть ли более подробная информация в файле журнала C:UsersFiringBlanksAppDataRoamingnpm-cache_logs2019-04-19T05_57_15_561Z-debug.log
2. Да, я обновил сообщение.
Ответ №1:
Нашел решение здесь: https://github.com/firebase/firebase-functions/issues/404
Это проблема с версией typescript. Последняя версия (3.4.4) не работает. Вместо этого работает установка версии v3.3.1. Я использовал следующее:
npm install --save typescript@3.3.1
и
npm install --save-dev typescript@3.3.1
как в корневой папке моего текущего проекта, так и в каталоге / functions .
Теперь он развертывается просто отлично.
Ответ №2:
Похоже на ошибку компилятора Typescript. При обновлении возникла аналогичная ошибка firebase-functions
.
Проверьте свою версию Typescript в package.json
папке «В вашей функции».
Эти версии работают для меня с узлом 8:
"firebase-functions": "^2.1.0"
"typescript": "^3.1.1"