nó: 8.16.0
firebase-functions: 2.3.0
firebase-tools: 6.9.1 ( NOTA: funciona em 6.8.0)
firebase-admin: 7.3.0
Estou executando isso no Windows 10.
Um projeto Firebase recém-gerado usando firebase init
com funções.
npm run start
(ou firebase functions:shell
)
O emulador inicia corretamente
Os seguintes registros são mostrados:
! The Cloud Functions emulator requires the module "firebase-admin" to be installed. This package is in your package.json, but it's not available. You probably need to run "npm install" in your functions directory.
i functions: Your functions could not be parsed due to an issue with your node_modules (see above)
Sim, a implantação funciona bem. A função implantada (hello world) também
Não consegui descobrir como rotular esse problema, então o rotulei para um ser humano fazer a triagem. Aguente firme.
Passando para firebase-tools, pois é onde a emulação é implementada.
O emulador funciona em [email protected]
. Este problema provavelmente está relacionado aos números 1243 e 1258
Enfrentando o mesmo problema:
✔ functions: Using node<strong i="6">@8</strong> from host.
✔ functions: Emulator started at http://localhost:5001
i functions: Watching "/home/yerzhan/projects/askimam/functions" for Cloud Functions...
⚠ The Cloud Functions emulator requires the module "firebase-admin" to be installed. This package is in your package.json, but it's not available. You probably need to run "npm install" in your functions directory.
i functions: Your functions could not be parsed due to an issue with your node_modules (see above)
firebase -V
6.9.1
"dependencies": {
"firebase-admin": "^7.3.0",
"firebase-functions": "^2.3.0"
},
Embora o pacote firebase-admin exista em node_modules.
[2019-05-09T09:19:26.091Z] ----------------------------------------------------------------------
[2019-05-09T09:19:26.093Z] Command: /home/yerzhan/node-v8.12.0-linux-x64/bin/node /home/yerzhan/node-v8.12.0-linux-x64/bin/firebase emulators:start --debug
[2019-05-09T09:19:26.093Z] CLI Version: 6.9.1
[2019-05-09T09:19:26.093Z] Platform: linux
[2019-05-09T09:19:26.093Z] Node Version: v8.12.0
[2019-05-09T09:19:26.094Z] Time: Thu May 09 2019 15:19:26 GMT+0600 (+06)
[2019-05-09T09:19:26.094Z] ----------------------------------------------------------------------
[2019-05-09T09:19:26.099Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
[2019-05-09T09:19:26.099Z] > authorizing via signed-in user
[2019-05-09T09:19:26.100Z] > refreshing access token with scopes: ["email","https://www.googleapis.com/auth/cloud-platform","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","openid"]
[2019-05-09T09:19:26.100Z] >>> HTTP REQUEST POST https://www.googleapis.com/oauth2/v3/token
<request body omitted>
[2019-05-09T09:19:26.891Z] <<< HTTP RESPONSE 200 content-type=application/json; charset=utf-8, vary=X-Origin, Referer, Origin,Accept-Encoding, date=Thu, 09 May 2019 09:19:26 GMT, server=scaffolding on HTTPServer2, cache-control=private, x-xss-protection=0, x-frame-options=SAMEORIGIN, x-content-type-options=nosniff, alt-svc=quic=":443"; ma=2592000; v="46,44,43,39", accept-ranges=none, transfer-encoding=chunked
[2019-05-09T09:19:26.901Z] >>> HTTP REQUEST GET https://cloudresourcemanager.googleapis.com/v1/projects/azan-kz-ask-imam
[2019-05-09T09:19:28.625Z] <<< HTTP RESPONSE 200 content-type=application/json; charset=UTF-8, vary=X-Origin, Referer, Origin,Accept-Encoding, date=Thu, 09 May 2019 09:19:28 GMT, server=ESF, cache-control=private, x-xss-protection=0, x-frame-options=SAMEORIGIN, x-content-type-options=nosniff, server-timing=gfet4t7; dur=923, alt-svc=quic=":443"; ma=2592000; v="46,44,43,39", accept-ranges=none, transfer-encoding=chunked
i Starting emulators: ["functions"]
✔ functions: Using node<strong i="5">@8</strong> from host.
[2019-05-09T09:19:28.637Z] >>> HTTP REQUEST GET https://mobilesdk-pa.googleapis.com/v1/projects/674391970261:getServerAppConfig
[2019-05-09T09:19:29.356Z] <<< HTTP RESPONSE 200 content-type=application/json; charset=UTF-8, vary=X-Origin, Referer, Origin,Accept-Encoding, date=Thu, 09 May 2019 09:19:29 GMT, server=ESF, cache-control=private, x-xss-protection=0, x-frame-options=SAMEORIGIN, x-content-type-options=nosniff, alt-svc=quic=":443"; ma=2592000; v="46,44,43,39", accept-ranges=none, transfer-encoding=chunked
✔ functions: Emulator started at http://localhost:5001
i functions: Watching "/home/yerzhan/projects/askimam/functions" for Cloud Functions...
[2019-05-09T09:19:29.813Z] Functions runtime initialized.
[2019-05-09T09:19:29.813Z] Disabled runtime features: undefined
⚠ The Cloud Functions emulator requires the module "firebase-admin" to be installed. This package is in your package.json, but it's not available. You probably need to run "npm install" in your functions directory.
i functions: Your functions could not be parsed due to an issue with your node_modules (see above)
Tenho a mesma solução e encontrei:
Você pode usar o comando alias como este: "yarn serve" ou "npm serve"
Ele irá chamar do packages.json, no bloco "scripts"
O mesmo problema aqui! Tentei encontrar uma solução alternativa durante 3 horas, mas sem sucesso.
Hoje pensei apenas em adicionar firebase-admin ao npm global, mas não tenho certeza se deve funcionar.
Tentaremos sua sugestão @namcoder
@diogolessa Fazer downgrade para firebase-tools 6.8.0 também corrige o problema. Não é uma opção para você?
Claro, pode ser ... Parece uma abordagem melhor. Porém, seria bom ter todas as versões mais recentes funcionando normalmente para iniciantes como eu. Obrigado @ExtraBB
O mesmo aqui ... Acontece no linux também.
EDIT: Downgrading "fix" confirmado.
Eu estava tendo esse problema, removi firebase-tools e reinstalei [email protected].
Mesmo problema ... o downgrade é a única maneira de fazer funcionar
Apenas configuração que funciona atualmente
firebase-functions: 2.3.0
firebase-tools: 6.8.0
firebase-admin: 7.3.0
Olá pessoal, desculpe o problema que esse problema está causando. Por enquanto, recomendamos fazer o downgrade para 6.8.0
enquanto trabalhamos em um patch.
Este problema é causado pelo uso do require.resolve
nativo em verifyDeveloperNodeModules()
onde slowRequireResolve
deve ser usado. O outro uso do nativo require.resolve
também terá o mesmo problema.
Isso não foi detectado em nossos testes porque require.resolve
resolveu para as dependências de desenvolvimento de firebase-tools
durante a execução dos testes, então fez parecer que não havia diferença de comportamento entre require.resolve
e slowRequireResolve
Este é um bug nas versões firebase-tools
6.9.0
e 6.9.1
. A solução é fazer o downgrade para 6.8.0
por enquanto:
npm install -g [email protected]
Obrigado pelas atualizações. O downgrade para 6.8.0 funcionou para nós
No momento, isso não está documentado na documentação do firebase para executar funções localmente e definitivamente precisa estar se uma correção ainda não estiver pronta.
Certo pessoal, acabamos de juntar uma correção para isso que sairá em 6.9.2
hoje. Podemos esperar por uma correção para # 1265 antes de lançar, mas se isso não funcionar, ele sairá como está. Assim que for eliminado, fecharei o bug, mas reabra se o problema ainda estiver acontecendo para você.
Corrigido por # 1263
A versão 6.9.2
foi lançada com esta correção.
Obtendo o seguinte erro, perguntando-me se ele está relacionado a este novo lançamento:
AssertionError [ERR_ASSERTION]: missing path
at Module.require (module.js:595:3)
at require (internal/module.js:11:18)
at InitializeFirebaseAdminStubs
atualizei de 6.8.0 para 6.9.2 e agora estou vendo:
funções: Usando node @ 8 do host.
- funções: Emulador iniciado em http: // localhost : 5001
! O emulador do Cloud Functions requer que o módulo "firebase-functions-test" seja instalado como uma dependência de desenvolvimento. Para corrigir isso, execute "npm install --save-dev firebase-functions-test" no diretório de funções.
funções i: suas funções não puderam ser analisadas devido a um problema com seus node_modules (veja acima)
Estou recebendo muitos erros depois de atualizar para 6.9.2.
A versão 6.9.2 foi lançada com esta correção.
A correção não pegou. Estamos vendo esse erro em "firebase-tools": "^6.10.0"
.
O emulador do Cloud Functions requer que o módulo "firebase-admin" seja a versão> 7.0.0, portanto, sua versão é muito antiga. Você provavelmente pode corrigir isso executando "npm install firebase -admin @ latest " no diretório de funções.
Removemos ^
de nossa dependência de package.json por enquanto para evitar a atualização automática na instalação.
"firebase-tools": "^6.8.0", // before
"firebase-tools": "6.8.0", // after
@diogolessa Fazer downgrade para firebase-tools 6.8.0 também corrige o problema. Não é uma opção para você?
Obrigado funcionou para mim
Comentários muito úteis
Este é um bug nas versões
firebase-tools
6.9.0
e6.9.1
. A solução é fazer o downgrade para6.8.0
por enquanto:ref: https://stackoverflow.com/a/56065094/4319131