poner - Rails-¿No se pudo encontrar un runtime de JavaScript?
javascript en head o body (11)
Instalar un tiempo de ejecución de Javascript
El error se debe a la ausencia de un tiempo de ejecución de Javascript en su máquina local. Para resolver esto, necesitarás instalar NodeJS.
Puede instalar NodeJS a través de Node Version Manager o nvm :
Primero, instale nvm
:
$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.0/install.sh | bash
Instale el nodo a través de nvm
:
nvm install 5.9.1
Esto instalará la versión 5.9.1
de Nodo.
rails 3.1.0.rc4
un nuevo proyecto de Rails usando rails 3.1.0.rc4
en mi máquina local, pero cuando intento iniciar el servidor, obtengo: No se pudo encontrar un tiempo de ejecución de JavaScript. Vea here para una lista de tiempos de ejecución disponibles. ( ExecJS::RuntimeUnavailable
)
Nota: Esto no es sobre Heroku.
Instalar una biblioteca de tiempo de ejecución javascript como nodejs resuelve esto
Para instalar nodejs en ubuntu, puede escribir el siguiente comando en el terminal:
sudo apt-get install nodejs
Para instalar nodejs en sistemas que usan yum, escriba lo siguiente en el terminal:
yum -y install nodejs
Añade las siguientes gemas en tu archivo de gemas
gem ''therubyracer''
gem ''execjs''
y correr
bundle install
O
Instale Node.js para arreglarlo permanentemente para todos los proyectos.
En CentOS 6.5, lo siguiente me funcionó:
sudo yum install -y nodejs
En la plataforma de Windows, también encontré ese problema. La solución para mí es simplemente agregar
C:/Windows/System32
al CAMINO
y reinicie la computadora.
Me encontré con este problema usando Phusion Passenger (que se ejecuta como un módulo nginx) en un servidor Redhat. Ya teníamos instalado un runtime de Javascript. Otras aplicaciones de Rails en el mismo directorio padre funcionaron bien.
Resultó que teníamos un problema de permisos. Ejecute "ls -l" y vea si la carpeta tiene el mismo propietario y grupo que otras aplicaciones de trabajo en el sistema. Tuve que ejecutar chown y chgrp en la carpeta (con el interruptor recursivo) para arreglarlo.
Si todo falla puedes intentarlo
# aptitude install nodejs
como raíz Puedes probar tu instalación con el siguiente comando:
# nodo -v
Si desea instalar NPM, consulte el siguiente link . Espero eso ayude.
Tuve este problema en una máquina con Windows y la instalación de node.js fue la solución que finalmente funcionó para mí. Esto se produjo después de probar varias otras rutas, incluido el intento de hacer que ''therubyracer'' funcione. Aunque el github para node.js sugiere que la instalación en Windows todavía es inestable, el sitio web en http://nodejs.org/ tenía un instalador de Windows que funcionaba perfectamente.
por ejemplo, si ya instaló nodejs from source y execjs no lo reconoce, puede intentar este consejo: https://coderwall.com/p/hyjdlw
sudo apt-get install nodejs
no funciona para mí. Para que funcione, tengo que hacer lo siguiente:
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
Espero que esto ayude a alguien que tiene el mismo problema que yo.
Nota de Michael 28/12/2011 - He cambiado mi aceptación de este (rubytheracer) a anterior (nodejs) ya que therubyracer tiene problemas de tamaño de código. Heroku ahora lo desalienta fuertemente. Funcionará, pero puede tener problemas de tamaño / rendimiento.
Si agrega un tiempo de ejecución, como therubyracer a su Gemfile y ejecute bundle, intente iniciar el servidor en el que debería funcionar.
gem ''therubyracer''
Se requiere un tiempo de ejecución de javascript para compilar coffeescript y también para uglifier.
Actualización, 12/12/2011: Algunas personas encontraron problemas con el rubytheracer (creo que era principalmente el tamaño del código). Encontraron que execjs (o nodejs) funcionaron igual de bien (si no mejor) y eran mucho más pequeños.
nb Coffeescript se convirtió en un estándar para 3.1+