Knoten: 8.16.0
Firebase-Funktionen: 2.3.0
Firebase-Tools: 6.9.1 (HINWEIS : Funktioniert unter 6.8.0)
firebase-admin: 7.3.0
Ich führe dies unter Windows 10 aus.
Ein frisch generiertes Firebase-Projekt mit firebase init
und Funktionen.
npm run start
(oder firebase functions:shell
) aus.
Der Emulator startet korrekt
Die folgenden Protokolle werden angezeigt:
! 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)
Ja, die Bereitstellung funktioniert einwandfrei. Die bereitgestellte Funktion (Hallo Welt) ebenfalls
Ich konnte nicht herausfinden, wie ich dieses Problem kennzeichnen soll, also habe ich es für einen Menschen zur Triage gekennzeichnet. Bleib 'dabei.
Wechseln Sie zu Firebase-Tools, da dort die Emulation implementiert wird.
Der Emulator arbeitet mit [email protected]
. Dieses Problem hängt wahrscheinlich mit # 1243 und # 1258 zusammen
Das gleiche Problem erleben:
✔ 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"
},
Obwohl das Paket firebase-admin in node_modules vorhanden ist.
[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)
Ich habe die gleiche und gefundene Lösung:
Sie können den Alias-Befehl wie folgt verwenden: "Garnaufschlag" oder "npm Aufschlag"
Es wird von der Datei packages.json im Block "scripts" aufgerufen
Gleiches Problem hier! Es wurde versucht, innerhalb von 3 Stunden eine Problemumgehung zu finden, jedoch ohne Erfolg.
Heute habe ich nur darüber nachgedacht, firebase-admin zu globalem npm hinzuzufügen, bin mir aber nicht sicher, ob es funktionieren soll.
Werde deinen Vorschlag @namcoder ausprobieren
@diogolessa Ein Downgrade auf Firebase-Tools 6.8.0 behebt ebenfalls das Problem. Ist das keine Option für Sie?
Sicher, kann sein ... Sieht nach einem besseren Ansatz aus. Es wäre jedoch schön, wenn die neuesten Versionen für Anfänger wie mich normal funktionieren würden. Danke @ExtraBB
Gleiches hier ... Es passiert auch unter Linux.
EDIT: Downgrade "Fix" bestätigt.
Ich hatte dieses Problem Ich habe Firebase-Tools entfernt und [email protected] neu installiert
Gleiches Problem. Ein Downgrade ist der einzige Weg, damit es funktioniert
Nur die Einstellung, die derzeit funktioniert
Firebase-Funktionen: 2.3.0
Firebase-Tools: 6.8.0
firebase-admin: 7.3.0
Hey Leute, entschuldigen Sie die Probleme, die dieses Problem verursacht. Im Moment empfehlen wir ein Downgrade auf 6.8.0
während wir an einem Patch arbeiten.
Dieses Problem wird durch die Verwendung des nativen require.resolve
in verifyDeveloperNodeModules()
wobei slowRequireResolve
verwendet werden sollte. Die andere Verwendung von nativem require.resolve
leidet ebenfalls unter dem gleichen Problem.
Dies wurde in unseren Tests nicht berücksichtigt, da require.resolve
beim Ausführen von Tests in die Entwicklungsabhängigkeiten von firebase-tools
, sodass es den Anschein hatte, dass es keinen Verhaltensunterschied zwischen require.resolve
und gab slowRequireResolve
Dies ist ein Fehler in den Versionen firebase-tools
6.9.0
und 6.9.1
. Die Lösung besteht darin, vorerst ein Downgrade auf 6.8.0
durchzuführen:
npm install -g [email protected]
Vielen Dank für die Updates. Ein Downgrade auf 6.8.0 hat bei uns funktioniert
Dies ist derzeit in den Firebase-Dokumenten zum lokalen Ausführen von Funktionen nicht dokumentiert und muss unbedingt vorhanden sein, wenn ein Fix noch nicht fertig ist.
Okay Leute, wir haben gerade einen Fix für dieses Problem zusammengeführt, der heute in 6.9.2
wird. Wir warten möglicherweise auf ein Update für # 1265, bevor wir es veröffentlichen, aber wenn das nicht gelingt, wird dies so wie es ist ausgehen. Sobald es heraus ist, werde ich diesen Fehler schließen, aber bitte wieder öffnen, wenn das Problem für Sie immer noch auftritt.
Behoben durch # 1263
Version 6.9.2
wurde mit diesem Fix veröffentlicht.
Wenn Sie den folgenden Fehler erhalten und sich fragen, ob er mit dieser neuen Version zusammenhängt:
AssertionError [ERR_ASSERTION]: missing path
at Module.require (module.js:595:3)
at require (internal/module.js:11:18)
at InitializeFirebaseAdminStubs
aktualisiert von 6.8.0 auf 6.9.2 und sehe jetzt:
Funktionen: Verwenden von Node @ 8 vom Host.
- Funktionen: Der Emulator wurde unter http: // localhost : 5001 gestartet
! Für den Cloud Functions-Emulator muss das Modul "firebase-functions-test" als Entwicklungsabhängigkeit installiert sein. Um dies zu beheben, führen Sie "npm install --save-dev firebase-functions-test" in Ihrem Funktionsverzeichnis aus.
i-Funktionen: Ihre Funktionen konnten aufgrund eines Problems mit Ihren node_modules nicht analysiert werden (siehe oben).
Nach dem Upgrade auf 6.9.2 werden viele Fehler angezeigt.
Version 6.9.2 wurde mit diesem Fix veröffentlicht.
Das Update blieb nicht hängen. Wir sehen diesen Fehler in "firebase-tools": "^6.10.0"
.
Für den Cloud Functions-Emulator muss das Modul "firebase-admin" Version> 7.0.0 sein, damit Ihre Version zu alt ist. Sie können dies wahrscheinlich beheben, indem Sie "npm install firebase-admin @ latest " in Ihrem Funktionsverzeichnis ausführen.
Wir haben die ^
vorerst aus unserer package.json-Abhängigkeit entfernt, um das automatische Upgrade bei der Installation zu verhindern.
"firebase-tools": "^6.8.0", // before
"firebase-tools": "6.8.0", // after
@diogolessa Ein Downgrade auf Firebase-Tools 6.8.0 behebt ebenfalls das Problem. Ist das keine Option für Sie?
Danke, es hat bei mir funktioniert
Hilfreichster Kommentar
Dies ist ein Fehler in den Versionen
firebase-tools
6.9.0
und6.9.1
. Die Lösung besteht darin, vorerst ein Downgrade auf6.8.0
durchzuführen:Ref: https://stackoverflow.com/a/56065094/4319131