Ich habe ein neues Rails-Projekt rails 3.1.0.rc4
auf meinem lokalen Computer erstellt, aber wenn ich versuche, den Server zu starten, wird Folgendes angezeigt: Es konnte keine JavaScript-Laufzeit gefunden werden. Siehe hier für eine Liste der verfügbaren Laufzeiten. ( ExecJS::RuntimeUnavailable
)
Hinweis: Hier geht es nicht um Heroku.
javascript
ruby-on-rails
ruby-on-rails-3
node.js
ruby-on-rails-3.1
Michael Durrant
quelle
quelle
Antworten:
Die Installation einer Javascript-Laufzeitbibliothek wie nodejs löst dieses Problem
Um nodejs auf ubuntu zu installieren, können Sie den folgenden Befehl in das Terminal eingeben:
Geben Sie Folgendes in das Terminal ein, um nodejs auf Systemen mit yum zu installieren:
quelle
sudo apt-get install nodejs
.Anmerkung von Michael 28.12.2011 - Ich habe meine Akzeptanz von diesem (Rubytheracer) auf oben (NodeJS) geändert, da der Subrayracer Probleme mit der Codegröße hat. Heroku rät jetzt stark davon ab . Es wird "funktionieren", kann aber Größen- / Leistungsprobleme haben.
Wenn Sie Ihrer Gemfile eine Laufzeit hinzufügen, z. B. therubyracer, und das Bundle ausführen, versuchen Sie, den Server zu starten, der funktionieren soll.
Zum Kompilieren von Coffeescript und auch für Uglifier ist eine Javascript-Laufzeit erforderlich.
Update, 12.12.2011: Einige Leute haben Probleme mit Rubytheracer gefunden (ich denke, es war hauptsächlich Codegröße). Sie fanden, dass execjs (oder nodejs) genauso gut funktionierten (wenn nicht besser) und viel kleiner waren.
nb Coffeescript wurde zum Standard für 3.1+
quelle
rake assets:precompile
Ihrem Repository auszuführen und anschließend Assets hinzuzufügen. Rails 3.1 benötigt zum Zeitpunkt der Veröffentlichung keine JavaScript-Laufzeit in der Produktion.group :development do gem 'therubyracer' end
Fügen Sie Ihrer Edelsteindatei folgende Edelsteine hinzu
und Renn
ODER
Installieren Sie Node.js , um es für alle Projekte dauerhaft zu beheben.
quelle
sudo apt-get install nodejs
funktioniert bei mir nicht Damit es funktioniert, muss ich Folgendes tun:Hoffe, das hilft jemandem, der das gleiche Problem wie ich hat.
quelle
sudo apt-get install software-properties-common
Wenn dies das Problem nicht löst, können Sie es manuell installieren: blog.anantshri.info/howto-add-ppa-in-debianAuf der Windows-Plattform bin ich auch auf dieses Problem gestoßen. Die Lösung für mich ist einfach hinzufügen
zum Pfad
und starten Sie den Computer neu.
quelle
Ich hatte dieses Problem auf einem Windows-Computer und die Installation von node.js war die Lösung, die schließlich für mich funktioniert hat. Dies geschah, nachdem mehrere andere Routen ausprobiert wurden, 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, hatte die Website unter http://nodejs.org/ ein Windows-Installationsprogramm, das perfekt funktionierte.
quelle
Wenn Sie beispielsweise nodejs bereits von der Quelle installieren und execjs es nicht erkennt, sollten Sie diesen Tipp ausprobieren: https://coderwall.com/p/hyjdlw
quelle
Wenn alles fehlschlägt, können Sie es versuchen
# aptitude install nodejs
als Wurzel. Sie können Ihre Installation mit dem folgenden Befehl testen:
# Knoten -v
Wenn Sie NPM installieren möchten, lesen Sie bitte den folgenden Link . Ich hoffe es hilft.
quelle
Unter CentOS 6.5 hat Folgendes für mich funktioniert:
quelle
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 Version Manager oder nvm installieren :
Installieren Sie zunächst
nvm
:Installieren Sie den Knoten über
nvm
:Dadurch wird die Version
5.9.1
von Node installiert .quelle
Ich bin mit Phusion Passenger (als Nginx-Modul ausgeführt) auf einem Redhat-Server auf dieses Problem gestoßen. Wir hatten bereits eine Javascript-Laufzeit installiert. Andere Rails-Apps im selben übergeordneten Verzeichnis funktionierten einwandfrei.
Es stellte sich heraus, dass wir ein Berechtigungsproblem hatten. Führen Sie "ls -l" aus und prüfen Sie, ob der Ordner denselben Eigentümer und dieselbe Gruppe wie andere funktionierende Apps auf dem System hat. Ich musste chown und chgrp für den Ordner (mit dem rekursiven Schalter) ausführen, um das Problem zu beheben.
quelle
Ich hoffe, Sie haben nodejs || vorinstalliert nmv.
Meine Lösung erfordert kein
sudo apt
Gem- Setup oder die Installation von 'node with ", wenn Sie bereits über nvm verfügen.Sie müssen lediglich DesctopEntry von RubyMine bearbeiten. dafür werden wir diese kleinen Schritte haben:
usr/share/applications
vim RubyMine
/bin/bash -i -c
. Ihre Linie sollte also so aussehenExec=/bin/bash -i -c "/home/USERNAME/rubymine/RubyMine-2019.1.2/bin/rubymine.sh" %f
Als Vorteil sind jetzt alle Ihre Umgebungsvariablen für RubyMine verfügbar. Sie haben also keine Schmerzen, wenn Sie sie hinzufügen.
quelle