rake db: create - Не удалось найти среду выполнения JavaScript - PullRequest
19 голосов
/ 30 января 2012

Вот ошибка, которую я получаю:

sergio@sergio-VirtualBox:~/blog$ rake db:create
rake aborted!
Could not find a JavaScript runtime. See https://github.com/sstephenson/execjs for a list of available runtimes.

(See full trace by running task with --trace)

sergio@sergio-VirtualBox:~/blog$ 

Так что после некоторого поиска мне кажется, что мне нужно установить среду исполнения Javascript для Ruby.

Есть ли разница между многими различными вариантами? Кажется, что Node.js проще всего установить, это вернется, чтобы укусить меня, или этот выбор в порядке?

Этот ответ , кажется, то, что я ищу, но я не знаю, как его использовать. Где я могу найти этот "gemfile", и это файл проекта на Rails или глобальный файл ruby? Я очень сбит с толку и, похоже, не могу понять, как мои ориентиры и множественные ответы противоречат друг другу и не решают проблему.

Добавьте это в свой Gemfile

драгоценный камень 'therubyracer', требуется: "v8"

и запустить

комплектация

Ответы [ 6 ]

53 голосов
/ 30 января 2012

Сам по себе Ruby не требует времени выполнения JS, но новое приложение Rails по умолчанию этого требует.

В главном каталоге приложения (т. Е. Для проекта Rails) есть файл с именем Gemfile, представляющий собой списокгемы, необходимые для вашего проекта, которые вы можете установить, используя bundle install.

. Добавление строки gem 'therubyracer', а затем bundle install установит среду выполнения ruby ​​racer JS, что, как я обнаружил, будет самым простымна 64-битной ОС.

Более подробную информацию о вашем Gemfile можно найти на сайте Bundler .

6 голосов
/ 30 января 2012

Вы уже установили Node.js на свой компьютер?Он также должен быть установлен на вашем компьютере.

вот ссылка на скачивание, http://nodejs.org/#download

1 голос
/ 17 апреля 2013

Есть несколько довольно похожих опций, таких как rubytheracer, node и execjs.

rubytheracer потерял популярность из-за размера кода. Такие производители, как Heroku (для рельсов), активно препятствуют этому.

В настоящее время я рекомендую node.js

Больше информации на Rails - Не удалось найти среду выполнения JavaScript?

0 голосов
/ 17 мая 2013

У меня была такая же ошибка, но затем я переустановил Ruby193 со всеми флажками (Tc / Tk, Associate rb и add to PATH).

И затем удалил GEMFile.lock

Отредактировал Gemfile, где бы я ни увидел gem therubyracer, я изменил его на: gem therubyracer,: platform =>: ruby ​​

  • Затем bundle install

  • Затем rake db:drop

  • Затем rake db:create

  • Затем rake db:migrate

и так далее

0 голосов
/ 16 марта 2013

вставьте gem 'therubyracer' в Gemfile в новой строке 1. запустить

gem install therubyracer -v '0.11.4'

  1. пробег

комплектация

Это будет работать

0 голосов
/ 26 января 2013

Просто gem install "therubyracer" и все работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...