wake-up-neo.com

Rails - Konnte keine JavaScript-Laufzeit gefunden werden?

Ich habe ein neues Rails Projekt mit Rails 3.1.0.rc4 Auf meinem lokalen Computer erstellt, aber wenn ich versuche, den Server zu starten, erhalte ich Folgendes: Es wurde keine JavaScript-Laufzeit gefunden. Siehe hier für eine Liste der verfügbaren Laufzeiten. (ExecJS::RuntimeUnavailable)

Hinweis: Hier geht es nicht um Heroku.

244
Michael Durrant

Das Installieren einer Javascript-Laufzeitbibliothek wie nodejs löst dies

Um nodejs auf Ubuntu zu installieren, können Sie den folgenden Befehl in das Terminal eingeben:

Sudo apt-get install nodejs

Geben Sie Folgendes in das Terminal ein, um nodejs auf Systemen mit yum zu installieren:

yum -y install nodejs
469
theTuxRacer

Anmerkung von Michael 28.12.2011 - Ich habe mein Akzeptieren von "this" (rubytheracer) in "above" (nodejs) geändert, da der Tubyracer Probleme mit der Codegröße hat. Heroku jetzt stark entmutige es . Es wird "funktionieren", kann aber Größen-/Leistungsprobleme haben.

Wenn Sie Ihrem Gemfile eine Laufzeitumgebung hinzufügen, z. B. therubyracer, und Bundle ausführen, versuchen Sie, den Server zu starten, der funktionieren soll.

gem 'therubyracer'

Zum Kompilieren von Coffeescript und auch für Uglifier wird eine Javascript-Laufzeit benötigt.

Update, 12.12.2011: Einige Leute fanden Probleme mit Rubytheracer (ich denke, es war hauptsächlich die Codegröße). Sie fanden, dass execjs (oder nodejs) genauso gut funktionierten (wenn nicht besser) und viel kleiner waren.

n.b. Coffeescript wurde zum Standard für 3.1+

44
Gazler

Fügen Sie folgende Edelsteine ​​in Ihre Edelsteindatei ein

gem 'therubyracer'
gem 'execjs'

und Renn

bundle install

[~ # ~] oder [~ # ~]

Install Node.js um es für alle Projekte dauerhaft zu reparieren.

27
Ramiz Raja

Sudo apt-get install nodejs funktioniert bei mir nicht. Um es zum Laufen zu bringen, muss ich Folgendes tun:

Sudo apt-get install python-software-properties
Sudo add-apt-repository ppa:chris-lea/node.js
Sudo apt-get update
Sudo apt-get install nodejs

Hoffe, dass dies jemandem hilft, der das gleiche Problem hat wie ich.

15
flyingsnow

Auf der Windows-Plattform traf ich auch dieses Problem Die Lösung für mich ist nur hinzufügen

C:\Windows\System32

zum PFAD

und starten Sie den Computer neu.

6
Yang

Ich hatte dieses Problem auf einem Windows-Computer und die Installation von node.js war die Lösung, die schließlich für mich funktionierte. Dies geschah nach dem Versuch mehrerer anderer Routen, einschließlich des Versuchs, 'therubyracer' zum Laufen zu bringen. Obwohl der Github für node.js darauf hinweist, dass die Installation unter Windows immer noch instabil ist, verfügte die Website unter http://nodejs.org/ über ein Windows-Installationsprogramm, das einwandfrei funktionierte.

3
Edub Kendo

Wenn alles fehlschlägt, können Sie es versuchen

# aptitude install nodejs

als root. Sie können Ihre Installation mit dem folgenden Befehl testen:

# node -v

Wenn Sie NPM installieren möchten, lesen Sie bitte Link . Ich hoffe es hilft.

1
user3576216

wenn Sie beispielsweise NodeJS bereits aus dem Quellcode installieren und ExecJS es nicht erkennt, sollten Sie diesen Tipp ausprobieren: https://coderwall.com/p/hyjdlw

1
SnirD

Ich hoffe du hast nodejs || vorinstalliert nmv.

Meine Lösung erfordert kein Gem-Setup oder die Installation von 'node with Sudo apt " wenn du schon nvm hast.

Sie müssen lediglich DesctopEntry von RubyMine bearbeiten. dafür werden wir diese kleinen Schritte haben:

  1. Gehe zusr/share/applications
  2. Open in jedem Editor (ich benutze vim) Rubymine DesktopEntry vim RubyMine
  3. Edit Zeile 6 (beginnt mit Exec). Sie sollten zum Anfang hinzufügen /bin/bash -i -c. Also sollte deine Zeile so aussehen Exec=/bin/bash -i -c "/home/USERNAME/rubymine/RubyMine-2019.1.2/bin/rubymine.sh" %f
  4. Getan! Du bist herrlich!

Als Vorteil stehen jetzt alle Umgebungsvariablen für RubyMine zur Verfügung. Du fühlst also keine Schmerzen, wenn du sie hinzufügst.

0
Ivan Kevich

Ich bin auf dieses Problem gestoßen, indem ich Phusion Passenger (das als Nginx-Modul ausgeführt wird) auf einem Redhat-Server verwendet habe. Wir hatten bereits eine Javascript-Laufzeit installiert. Andere Rails Apps im selben übergeordneten Verzeichnis haben problemlos funktioniert.

Es stellte sich heraus, dass wir ein Berechtigungsproblem hatten. Führen Sie "ls -l" aus und prüfen Sie, ob der Ordner denselben Besitzer und dieselbe Gruppe hat wie andere funktionierende Apps auf dem System. Ich musste chown und chgrp für den Ordner ausführen (mit dem rekursiven Schalter), um das Problem zu beheben.

0
Patrick

Installieren Sie eine Javascript-Laufzeit

Der Fehler wird durch das Fehlen einer Javascript-Laufzeit auf Ihrem lokalen Computer verursacht. Um dies zu beheben, müssen Sie NodeJS installieren.

Sie können NodeJS über den Node= Versionsmanager oder nvm installieren:

Installieren Sie zuerst nvm:

$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.0/install.sh | bash

Installiere Node durch nvm:

nvm install 5.9.1

Dies installiert die Version 5.9.1 von Node.

0
gnerkus

Unter CentOS 6.5 funktionierte für mich Folgendes:

Sudo yum install -y nodejs
0
Bob Stine