nodo: 8.16.0
firebase-functions: 2.3.0
firebase-tools: 6.9.1 ( NOTA: Funciona en 6.8.0)
firebase-admin: 7.3.0
Estoy ejecutando esto en Windows 10.
Un proyecto de base de fuego recién generado que usa firebase init
con funciones.
npm run start
(o firebase functions:shell
)
El emulador se inicia correctamente
Se muestran los siguientes registros:
! 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)
Sí, la implementación funciona bien. La función desplegada (hola mundo) también
No pude averiguar cómo etiquetar este problema, así que lo he etiquetado para que un humano lo clasifique. Aguanta.
Pasando a firebase-tools ya que ahí es donde se implementa la emulación.
El emulador funciona en [email protected]
. Es probable que este problema esté relacionado con los números 1243 y 1258.
Experimentando el mismo 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"
},
Aunque el paquete firebase-admin existe en 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)
Tengo la misma solución y encontré:
Puede usar el comando de alias como este: "yarn serve" o "npm serve"
Llamará desde packages.json, en el bloque "scripts"
¡El mismo problema aquí! Intenté encontrar una solución durante 3 horas, pero sin éxito.
Hoy solo pensé en agregar firebase-admin a npm global, pero no estoy seguro de si debería funcionar.
Probaré tu sugerencia
@diogolessa La degradación a firebase-tools 6.8.0 también soluciona el problema, ¿no es una opción para ti?
Claro, puede ser ... Parece un mejor enfoque. Sin embargo, sería bueno tener todas las versiones más nuevas funcionando normalmente para principiantes como yo. Gracias @ExtraBB
Lo mismo aquí ... También sucede en Linux.
EDITAR: "corrección" de degradación confirmada.
Estaba teniendo este problema, eliminé firebase-tools y reinstalé [email protected].
El mismo problema ... degradar es la única forma de hacerlo funcionar
Solo configuración que funciona actualmente
firebase-functions: 2.3.0
firebase-tools: 6.8.0
firebase-admin: 7.3.0
Hola amigos, perdón por el problema que está causando este problema. Por ahora, recomendamos cambiar a 6.8.0
mientras trabajamos en un parche.
Este problema se debe al uso del require.resolve
nativo en verifyDeveloperNodeModules()
donde se debe usar slowRequireResolve
. El otro uso de require.resolve
nativo también sufrirá el mismo problema.
Esto no se detectó en nuestras pruebas porque require.resolve
resolvió las dependencias de desarrollo de firebase-tools
cuando se ejecutaba en las pruebas, por lo que parecía que no había diferencia de comportamiento entre require.resolve
y slowRequireResolve
Este es un error en las versiones firebase-tools
6.9.0
y 6.9.1
. La solución es degradar a 6.8.0
por ahora:
npm install -g [email protected]
Gracias por las actualizaciones. La degradación a 6.8.0 funcionó para nosotros
Esto no está documentado actualmente en los documentos de firebase para ejecutar funciones localmente y definitivamente debe estarlo si una solución aún no está lista.
Muy bien amigos, acabamos de fusionarnos en una solución para esto que saldrá en 6.9.2
hoy. Es posible que esperemos una solución para el # 1265 antes de lanzarlo, pero si eso no lo hace, saldrá como está. Una vez que esté fuera, cerraré este error, pero vuelva a abrirlo si el problema aún le sigue ocurriendo.
Corregido por # 1263
La versión 6.9.2
se ha publicado con esta corrección.
Recibiendo el siguiente error, preguntándome si está relacionado con esta nueva versión:
AssertionError [ERR_ASSERTION]: missing path
at Module.require (module.js:595:3)
at require (internal/module.js:11:18)
at InitializeFirebaseAdminStubs
actualizado de 6.8.0 a 6.9.2 y ahora veo:
funciones: Usando el nodo @ 8 desde el host.
- funciones: Emulador iniciado en http: // localhost : 5001
! El emulador de Cloud Functions requiere que el módulo "firebase-functions-test" se instale como una dependencia de desarrollo. Para solucionar esto, ejecute "npm install --save-dev firebase-functions-test" en su directorio de funciones.
i funciones: sus funciones no se pudieron analizar debido a un problema con sus node_modules (ver arriba)
Recibo muchos errores después de actualizar a 6.9.2.
La versión 6.9.2 se ha lanzado con esta corrección.
La solución no se mantuvo. Estamos viendo este error en "firebase-tools": "^6.10.0"
.
El emulador de Cloud Functions requiere que el módulo "firebase-admin" sea una versión> 7.0.0, por lo que tu versión es demasiado antigua. Probablemente pueda solucionar este problema ejecutando "npm install firebase-admin @ latest " en su directorio de funciones.
Hemos eliminado el ^
de nuestra dependencia package.json por ahora para evitar la actualización automática en la instalación.
"firebase-tools": "^6.8.0", // before
"firebase-tools": "6.8.0", // after
@diogolessa La degradación a firebase-tools 6.8.0 también soluciona el problema, ¿no es una opción para ti?
Gracias, me ha funcionado
Comentario más útil
Este es un error en las versiones
firebase-tools
6.9.0
y6.9.1
. La solución es degradar a6.8.0
por ahora:ref: https://stackoverflow.com/a/56065094/4319131