Кажется, в вашей инсталляции 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.

Другие вопросы по тегам