Rails - Kunde inte hitta en JavaScript-körning?
Jag skapade ett nytt Rails-projekt med rails 3.1.0.rc4 på min lokala dator men när jag försöker starta servern får jag: Kunde inte hitta en JavaScript-körningsmiljö. Se här för en lista över tillgängliga körningsmiljöer. (ExecJS::RuntimeUnavailable)
Obs: Detta handlar inte om Heroku.
Svar #1
Att installera ett JavaScript-runtimebibliotek som Node.js löser detta
För att installera Node.js på Ubuntu kan du skriva följande kommando i terminalen:
sudo apt-get install nodejs
För att installera nodejs på system som använder yum, skriv följande i terminalen:
yum -y install nodejs
Svar #2
Anteckning från Michael 28/12/2011 - Jag har ändrat mitt val från detta (rubytheracer) till ovanstående (nodejs) eftersom therubyracer har problem med kodstorlek. Heroku avråder nu starkt från det. Det kommer att 'fungera' men kan ha problem med storlek/prestanda.
Om du lägger till en runtime, såsom therubyracer, i din Gemfile och kör bundle och sedan försöker starta servern bör det fungera.
gem 'therubyracer'
En JavaScript-körningstid krävs för att kompilera CoffeeScript och även för Uglifier.
Uppdatering, 12/12/2011: Vissa personer hittade problem med rubytheracer (jag tror det mest var kodstorleken). De upptäckte att execjs (eller nodejs) fungerade lika bra (om inte bättre) och var mycket mindre.
n.b. Coffeescript blev en standard för 3.1+
Svar #3
Lägg till följande gems i din gem-fil
gem 'therubyracer'
gem 'execjs'
och spring
bundle install
ELLER
Installera Node.js för att åtgärda det permanent för alla projekt.
Svar #4
sudo apt-get install nodejs fungerar inte för mig. För att få det att fungera måste jag göra följande:
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
Hoppas detta kommer att hjälpa någon som har samma problem som jag.
