[RUBY] 767 JSON :: ParserError tritt auf und der lokale Server kann nicht gestartet werden.

767 JSON :: ParserError tritt auf und der lokale Server kann nicht gestartet werden.

Wenn Sie den Befehl "Rails s" am Terminal eingeben, Das folgende Fehlerprotokoll ist während des Serverstartvorgangs aufgetreten, und der lokale Serverstart ist fehlgeschlagen.

#Zeilen über der 10. Zeile werden weggelassen
	10: from /Users/ito/.rbenv/versions/2.6.5/lib/ruby/2.6.0/tsort.rb:228:in `block in tsort_each'
	 9: from /Users/ito/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/railties-6.0.3.3/lib/rails/initializable.rb:61:in `block in run_initializers'
	 8: from /Users/ito/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/railties-6.0.3.3/lib/rails/initializable.rb:32:in `run'
	 7: from /Users/ito/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/railties-6.0.3.3/lib/rails/initializable.rb:32:in `instance_exec'
	 6: from /Users/ito/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/webpacker-4.3.0/lib/webpacker/railtie.rb:84:in `block in <class:Engine>'
	 5: from /Users/ito/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/webpacker-4.3.0/lib/webpacker.rb:35:in `bootstrap'
	 4: from /Users/ito/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/webpacker-4.3.0/lib/webpacker/commands.rb:25:in `bootstrap'
	 3: from /Users/ito/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/webpacker-4.3.0/lib/webpacker/manifest.rb:18:in `refresh'
	 2: from /Users/ito/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/webpacker-4.3.0/lib/webpacker/manifest.rb:84:in `load'
	 1: from /Users/ito/.rbenv/versions/2.6.5/lib/ruby/2.6.0/json/common.rb:156:in `parse'
/Users/ito/.rbenv/versions/2.6.5/lib/ruby/2.6.0/json/common.rb:156:in `parse': 767: unexpected token at '' (JSON::ParserError)

Wenn ich den Fehlerinhalt vorerst lese, parse': 767: unexpected token at '' (JSON::ParserError) Achten Sie auf die Anzeige von. Was zur Hölle ist das? Ich denke, ich werde weiterhin nach einer Lösung suchen.

Was wurde untersucht und Hypothese

Vorerst habe ich nach JSON :: ParserError gesucht, aber keine Informationen dazu gefunden. In der Zwischenzeit wurden die Informationen auf der folgenden Website zu einem Lichtstrahl.

Blog im Entwicklermodus: Schienen 6 verschwenden wertvolle 4 Stunden am Nachmittag

... ich falle hierher. Als ich ihm folgte, gab es eine Datei namens manifest.json unter public / packs, die leer war. Ich muss gegangen sein, um diese Datei zu erstellen, als sie stecken blieb. Ich habe dort einen Reset erzwungen, so dass er leer blieb, und es scheint, dass ich einen JSON-ParseError habe. Ich habe diese Datei gelöscht und es hat funktioniert. War gut.

Hmmm, kurz gesagt, ** die Datei für Ruby selbst ist beschädigt ** und ... Im Nachhinein erinnerte ich mich, dass ich den Server während der Verarbeitung des lokalen Servers mit Control + C beendet hatte. Wie bei den oben genannten Symptomen wird die Hypothese aufgestellt, dass ** manifest.rb möglicherweise beschädigt ist **, Ich habe versucht, manifest.rb in einem anderen Verzeichnis (z. B. Desktop) zu speichern, damit es nicht gelesen wird.

als Ergebnis

Speichern Sie manifest.rb basierend auf der Hypothese und den untersuchten Inhalten in einem anderen Verzeichnis (Desktop) und führen Sie Rails s erneut aus. Dann wurde das folgende Ergebnis zurückgegeben.

Terminal


/Users/ito/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/bootsnap-1.4.8/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:
in `require': cannot load such file -- 
/Users/ito/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/webpacker-4.3.0/lib/webpacker/manifest.rb (LoadError)

... Nun, ich dachte, es wäre so, aber ich war schockiert, hier wieder gestrandet in die Dunkelheit zu rennen. Es scheint, dass es nicht gelöst wurde, ohne manifest.rb zu laden. ~~ Es scheint nicht automatisch generiert zu werden ~~

Ich konnte keine gültige Lösung finden, selbst wenn ich nicht mehr im Internet suchte Ich beschloss, dem Mentor von TECK CAMP eine Frage zu stellen. Es ist unmöglich, den im unbekannten dunklen Bereich auftretenden Fehler selbst zu beheben.

Aber nein ...!

Es war ein Fehler, dessen Lösung dem Mentor unbekannt war. Es tut mir leid, dass ich verschiedene Dinge getan habe, aber die Bedienung meines Mac Books wurde zu schwer, so dass ich hier eine Pause machte. Es ist schon Yannarune.

Und die Lösung

Rückblick auf den Inhalt von Blog im Entwicklermodus: Schienen 6 verschwenden wertvolle 4 Stunden am Nachmittag Aussicht.

・ ・ ・ ** Unter public / packs befindet sich eine Datei namens manifest.json **.

** Hmm? ** Wenn Sie genau hinschauen, haben Sie nicht gesagt, dass Sie manifest.rb löschen sollten!

Überprüfen Sie dann sofort das Verzeichnis. Es gibt ein leeres manifest.rb ...! Löschen Sie manifest.rb während wkwk. Infolgedessen wurde der lokale Server erfolgreich wiederbelebt. Herzliche Glückwünsche

Die Ursache war ** das manifest.json ** im Verzeichnis public / packs der Rails-App, an der ich gearbeitet habe. Ich frage mich, warum ich es übersehen habe, weil es im Referenzblog geschrieben wurde. Die Ruby-Datei wurde nicht beschädigt.

Ich hatte Angst vor meinem Selbstvertrauen beim Lesen und dies löste den 767 JSON :: ParserError. Ich habe 3 Stunden verschwendet ... Ich benutze Control + C nicht mehr leichtfertig ...

Recommended Posts

767 JSON :: ParserError tritt auf und der lokale Server kann nicht gestartet werden.
Der Rails-Server kann in Cloud9 nicht gestartet werden
So lösen Sie das Problem, dass unter iOS14 keine Benachrichtigung angefordert werden kann
Lösen Sie das Problem, dass SwiftPM den Proxy nicht überqueren und dem Projekt Pakete hinzufügen kann
[Android] Lösung, wenn die Kamera unter Android 9 nicht gestartet werden kann
JSON in Java und Jackson Teil 1 Gibt JSON vom Server zurück
Vermeiden Sie das Problem, dass beim Upgrade von Rails 4.2.x auf 5.0.x keine Sitzung abgerufen werden kann, wenn Canary freigegeben wird.
Wenn Tomcat in Eclipse gestartet wird, wird "ClassNotFoundException" angezeigt und kann nicht gestartet werden.
Eine Geschichte, die sich mit dem Problem befasst, dass REMOTE_ADDR nicht in einem mit Docker Swarm + Traefik (1.7) erstellten Cluster erworben werden kann.
So löschen Sie die Prozess-ID (PID), die nicht gelöscht werden kann! (Umgang mit Inoperabilität mit Vim und Vi)
Mit Pg_resetwal kann der PostgreSQL Docker-Container gestartet werden, wenn WAL fehlerhaft ist und nicht gestartet werden kann.