Jeder Abschnitt zitiert einen Fehler so, wie Elide ihn ausgibt, und nennt dann die Lösung.
Kein solches eingebautes Modul
Error: No such built-in module: node:http2node:http2, node:cluster, node:inspector und node:wasi sind nicht verfügbar; require liefert den Code
ERR_UNKNOWN_BUILTIN_MODULE. Ohne das Präfix node: lautet die Meldung Cannot find module 'http2'. Ein Paket, das
eines davon beim Laden importiert, etwa Fastify, scheitert auf dieselbe Weise. Den Status eines Moduls finden Sie in
der API-Übersicht.
Modul nach elide install nicht gefunden
TypeError: Module not found: 'hono'Ein einfaches elide install installiert nur Maven-Abhängigkeiten. Liegt nur eine package.json vor, gibt es nichts
aus und endet mit Exit-Code 0. Installieren Sie npm-Pakete mit:
elide install --ecosystems=npmPython ist nicht installiert
Python support is not installed. Run 'elide setup python' to add it.Exit-Code 2. Führen Sie elide setup python aus; elide info listet die installierten Sprachen in der Zeile
Languages:. Eine JavaScript-Datei, die vor der Installation von Python ein .py-Modul importiert, endet mit
Exit-Code 1 und Cannot import 'mod.py': Python support is not installed. sowie demselben Hinweis. Ist Python
installiert, brauchen Aufrufe zwischen Sprachen außerdem --interop; siehe
Sprachen und Interop.
elide javac ohne --
error: '[-- TOOL_ARGS]…' can only be given after '--'
Usage: elide javac [FLAGS] [-- TOOL_ARGS]…Argumente für javac, java, kotlinc und die anderen JDK-Werkzeuge stehen nach --:
elide javac -- -d out Hello.java
elide java -- -cp out HelloKotlin-Klassen scheitern unter elide java
elide kotlinc -- -d kout Main.kt
elide java -- -cp kout MainKtException in thread "main" java.lang.NoClassDefFoundError: kotlin/collections/CollectionsKt
at MainKt.main(Main.kt:2)
at MainKt.main(Main.kt)
Caused by: java.lang.ClassNotFoundException: kotlin.collections.CollectionsKtelide java fügt die Kotlin-Standardbibliothek nicht hinzu. Führen Sie die Datei mit elide run Main.kt aus, oder
verpacken Sie die App als Jvm.JvmApplication.
kotlinc -include-runtime scheitert.
Sandbox-Verweigerungen
| Meldung | Freigabe |
|---|---|
EACCES: permission denied, open 'hello. | --allow-read=PATHS oder --allow-write=PATHS |
Error: Filesystem read denied by policy: / | Den npm-Speicher zu --allow-read hinzufügen; Pakete werden nach ~/.cache/aube verlinkt |
fetch to 'example. | Das Flag aus der Meldung |
spawn of 'echo' is not permitted; grant it with --allow-run= | Das Flag aus der Meldung |
fetch to 'example. | Den Host aus --deny-net entfernen |
spawn of 'echo' denied by --deny-run | Den Befehl aus --deny-run entfernen |
Siehe Sandbox und Limits.
--deny-net ohne =
error: equal sign is needed when assigning values to '--deny-net=<HOSTS>'Exit-Code 2. Schreiben Sie --deny-net=example.com; dasselbe gilt für --deny-run. Die --allow-*-Flags nehmen
einen optionalen Wert, daher gibt --allow-net example.com run app.js alle Hosts frei und versucht, eine Datei
namens example.com auszuführen:
No file or script named 'example.com'Exit-Code 124
Error: --timeout 2s exceeded--timeout=DURATION hat die Ausführung beendet. Erhöhen Sie den Wert oder entfernen Sie das Flag.
Exit-Code 3 und Speichermangel
--heap-dump-on-oom=FILE schreibt einen Heap-Dump, wenn der Heap voll ist, und endet dann mit Exit-Code 3:
Dumping heap to …/oom.hprof ...
Heap dump file created [308989015 bytes in 0.988 secs]Ohne das Flag endet ein voller Heap mit Exit-Code 1 und
Could not allocate an unaligned heap chunk because the heap address space is exhausted. Erhöhen Sie --max-mem. Ein
Wert von 128m oder weniger scheitert, bevor das Programm startet:
Failed to create isolate: INSUFFICIENT_ADDRESS_SPACE (802)Port bereits belegt
node:http meldet einen belegten Port:
Error: listen EADDRINUSE 127.0.0.1:3000Server mit Fetch-Handler (export default { fetch }, Elide.serve) melden nichts: Ein zweiter Server auf demselben
Port startet, und die Anfragen wechseln zwischen beiden Prozessen. Beenden Sie zuerst den alten:
ss -ltnp | grep :3000Eine Anfrage liefert 500, ohne dass ein Fehler ausgegeben wird
HTTP/1.1 500 Internal Server ErrorEin Fetch-Handler, der eine Ausnahme wirft, antwortet mit 500 Internal Server Error, ohne den Fehler auszugeben.
Umschließen Sie den Handler mit try/catch und protokollieren Sie den Fehler. Siehe
HTTP-Dienst erstellen.
Express: express.json() beendet den Server
TypeError: Buffer.isBuffer is not a functionexpress.json() und express.text() beenden den Prozess bei der ersten Anfrage mit Body. Lesen Sie den Body selbst
oder verwenden Sie express.raw(); siehe Frameworks.