Ошибка при запуске сервера ruby, в частности SystemStackError - PullRequest
0 голосов
/ 15 февраля 2020

Может быть, это просто простая ошибка, но так как я - Rails noob ie, любая помощь в моей проблеме будет принята с благодарностью. Я сталкиваюсь со следующей ошибкой каждый раз, когда я запускаю сервер rails. Я использую Ruby 2.6 и Rails 4.2

C:/Ruby26-x64/lib/ruby/gems/2.6.0/gems/activesupport-4.2.0/lib/active_support/core_ext/object/duplicable.rb:85: warning: BigDecimal.new is deprecated; use BigDecimal() method instead.
=> Booting WEBrick
=> Rails 4.2.0 application starting in development on http://localhost:3000
=> Run `rails server -h` for more startup options
=> Ctrl-C to shutdown server
C:/Ruby26-x64/lib/ruby/gems/2.6.0/gems/activesupport-4.2.0/lib/active_support/core_ext/numeric/conversions.rb:121: warning: constant ::Fixnum is deprecated
C:/Ruby26-x64/lib/ruby/gems/2.6.0/gems/activesupport-4.2.0/lib/active_support/core_ext/numeric/conversions.rb:121: warning: constant ::Bignum is deprecated
Exiting
Traceback (most recent call last):
bin/rails: stack level too deep (SystemStackError)

1 Ответ

0 голосов
/ 16 февраля 2020

Rails 4.2 не поддерживает Ruby 2.6. Вы должны использовать Ruby 2.4 для Rails 4.2, так как поддержка Ruby 2.4 была явно добавлена ​​в Rails 4.2.8 .

Если вы используете sh для использования Ruby 2.6 вы захотите использовать Rails 6. Обновление с Rails 4.2 до 5 до 6 - это сложный процесс , поэтому вам, скорее всего, будет проще понизить Ruby, чем обновлять Rails. Выполнение Ruby 2.4 на Windows - это упражнение, оставленное читателю.

Подробнее о совместимости между Ruby и версиями Rails вы можете прочитать в этом ответе .

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