Кажется, в вашей инсталляции ruby отсутствует psych (для вывода на YAML). Чтобы устранить это предупреждение, пожалуйста, установите libyaml и переустановите ваш ruby
На свежей установке Солидус, работает bundle exec rails g spree:install
выкидывает исключение
$ bundle exec rails g spree:install
/Users/jason/.rvm/rubies/ruby-2.2.5/lib/ruby/2.2.0/yaml.rb:4:in `<top (required)>':
It seems your ruby installation is missing psych (for YAML output).
To eliminate this warning, please install libyaml and reinstall your ruby.
Я не уверен, как я это сделал, но каким-то образом я испортил установку солидуса по умолчанию до такой степени, что он отказывается запускаться bundle exec rails g spree:install
, сбой с этой ошибкой теперь важно, что я делаю.
В Интернете есть некоторые темы об этой ошибке (см. Проблему ядра Github Homebrew 11635, ядро Github Homebrew 11636, переполнение стека или переполнение стека), большинство из которых указывают на создание libyaml с последующей переустановкой Ruby. Некоторые говорят, что для прояснения этого нужны еще более крайние меры, такие как удаление конкретных ссылок на старых призраков libyaml, которые могут быть в вашей системе.
Я пытался все во всех темах, которые я нашел, чтобы решить эту проблему, но проблема сохранялась и не исчезла. Ни один из советов ни по одной из приведенных выше ссылок не сработал.
Тогда я просто начал с нуля, с совершенно новым приложением rails, и проблема ушла. Так что я подозреваю, что в начальных установках я непреднамеренно сделал что-то, из-за чего код выдает эту ошибку, а не библиотеку, отсутствующую в моей системе (как показывают все указания)
Я публикую здесь только для справки. кросс-пост: https://github.com/solidusio/solidus/issues/2434
https://gist.github.com/jasonfb/5d4834a55411a0f45f5f8f966188e117
1 ответ
Установку с ошибкой можно посмотреть здесь: https://github.com/jasonfb/solidus_240_helloworld_BUGGY_solidio-solidis-Issue2434
Я знаю, что я здесь сделал.
Я по ошибке попытался установить rails new, используя rails 5.2.0.beta, думая, что, возможно, глава solidus просто поработает над ним. (тупое предположение).
Начав с создания приложения Rails 5.2.0.beta, я переключил версию rails моего gemfile на 5.1.4. Не делай этого; это не работает
Затем я приступил к добавлению самих камней Solidus, и что, когда я столкнулся с неустранимым исключением после связки exec связки, g spree: install
На двух последующих попытках сделать новую установку Solidus я правильно использовал
rails _5.1.4_ new solidus-hello-world
чтобы проверить, какая версия Rails установлена в вашем активном наборе гемов, используйте rails -v
Я думаю, что случилось то, что у меня была активна 5.2.0.beta и я только что побежал rails new solidus-hello-world
и он установил приложение 5.2.0.beta.