У меня была похожая проблема: мое приложение Rails 3.1 нормально работало в Windows, но получало ту же ошибку, что и OP, при работе в Linux. Исправление, которое работало для меня на обеих платформах, заключалось в добавлении следующего к моему Gemfile
:
gem 'therubyracer', :platforms => :ruby
Хитрость заключается в том, что :platforms => :ruby
на самом деле означает , используйте этот драгоценный камень только с "C Ruby (MRI) или Rubinius, но НЕ Windows".
Другие возможные значения для :platforms
описаны в справочной странице bundler
.
К вашему сведению: Windows имеет встроенный движок JavaScript, который execjs
может найти. В Linux нет встроенной функции, хотя есть несколько доступных для установки. therubyracer
является одним из них. Другие перечислены в execjs
README.md .