Ошибки развертывания Firebase, начинающиеся с ненулевого кода выхода (пробел в пути проекта)
недавно у меня были проблемы с командой развертывания firebase. После команды firebase deploy все остальные развертывались, кроме firebase (хранилище, база данных и т. д.), Поэтому я решил переустановить firebase, чтобы исправить эту ситуацию, но после переустановки моя проблема стала больше. Теперь ни один из них не развертывается со следующей ошибкой:
i deploying database, functions
Running command: npm --prefix $RESOURCE_DIR run lint
npm ERR! path C:UsersfarukGoogle DriveAndroidfirebase$RESOURCE_DIRpackage.json
npm ERR! code ENOENT
npm ERR! errno -4058
npm ERR! syscall open
npm ERR! enoent ENOENT: no such file or directory, open 'C:UsersfarukGoogle DriveAndroidfirebase$RESOURCE_DIRpackage.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! C:UsersfarukAppDataRoamingnpm-cache_logs18-01-24T18_21_34_878Z-debug.log
Error: functions predeploy error: Command terminated with non-zero exit code4294963238
после небольшого исследования я увидел некоторые темы об этом, который Совет изменить
$RESOURCE_DIR to %RESOURCE_DIR%
в системах windows (я использую windows 10 кстати.) Итак, я отредактировал свой военнослужащих.в JSON файл, который находится на одном верхнем уровне папки "Мои функции". вроде этого. (Я не знаю, правильный ли это файл, который я должен редактировать)
"database": {
"rules": "database.rules.json"
},
"functions": {
"predeploy": [
"npm --prefix %RESOURCE_DIR% run lint"
]
}
}
но после этого редактирования я начал получать другое сообщение об ошибке, подобное этому.
i deploying database, functions
Running command: npm --prefix %RESOURCE_DIR% run lint
Usage: npm <command>
where <command> is one of:
access, adduser, bin, bugs, c, cache, completion, config,
ddp, dedupe, deprecate, dist-tag, docs, doctor, edit,
explore, get, help, help-search, i, init, install,
install-test, it, link, list, ln, login, logout, ls,
outdated, owner, pack, ping, prefix, profile, prune,
publish, rb, rebuild, repo, restart, root, run, run-script,
s, se, search, set, shrinkwrap, star, stars, start, stop, t,
team, test, token, tst, un, uninstall, unpublish, unstar,
up, update, v, version, view, whoami
npm <command> -h quick help on <command>
npm -l display full usage info
npm help <term> search for help on <term>
npm help npm involved overview
Specify configs in the ini-formatted file:
C:Usersfaruk.npmrc
or on the command line via: npm <command> --key value
Config info can be viewed via: npm help config
npm@5.6.0 C:Program Filesnodejsnode_modulesnpm
Error: functions predeploy error: Command terminated with non-zero exit code1
любой совет приветствуется. Спасибо заранее.
4 ответов
ошибка связана с тем, что у вас есть место где-то на пути вашего проекта ("Google Диск"):
C:\Users\faruk\Google Drive\Android\firebase$RESOURCE_DIR\package.json
к сожалению, это запутывает командную строку npm, и она принимает это как два аргумента, разделенных этим пространством.
обычно я ожидаю, что смогу разместить кавычки вокруг всего этого, чтобы пространство не интерпретировалось таким образом. Поэтому я попробовал это:
"predeploy": [
"npm --prefix \"%RESOURCE_DIR%\" run lint"
]
и это работает для меня.
Я следуйте с командой Firebase внутренне об этой проблеме, а также о том, что изменения должны быть сделаны для Windows.
что происходит на самом деле в Windows,firebase.json
по умолчанию содержит следующее:
"predeploy": [
"npm --prefix \"$RESOURCE_DIR\" run lint"
]
измените его на:
"predeploy": [
"npm --prefix \"%RESOURCE_DIR%\" run lint"
]
это сработало для меня, надеюсь, это сработает для вас.
У меня была такая же проблема в Windows. Что я сделал, так это скопировал все файлы, которые были в функции папка и передал ее в %RESOURCE_DIR% папка, а затем я запускаю развертывание Firebase, и оно успешно развернуто.
для меня проблема была (я полагаю), потому что firebase
не удалось найти сценарий.
не работает:
{
"hosting": {
"predeploy": "predeploy.sh",
...
}
Running command: predeploy.sh
events.js:160
throw er; // Unhandled 'error' event
^
Error: spawn predeploy.sh ENOENT
at exports._errnoException (util.js:1020:11)
at Process.ChildProcess._handle.onexit (internal/child_process.js:193:32)
at onErrorNT (internal/child_process.js:367:16)
at _combinedTickCallback (internal/process/next_tick.js:80:11)
at process._tickCallback (internal/process/next_tick.js:104:9)
at Module.runMain (module.js:606:11)
at run (bootstrap_node.js:389:7)
at startup (bootstrap_node.js:149:9)
at bootstrap_node.js:504:3
Error: hosting predeploy error: Command terminated with non-zero exit code1
сделал работу: (обратите внимание на ./
)
{
"hosting": {
"predeploy": "./predeploy.sh",
...
}