rake db rake 任务不工作 Ruby 2.4.0 & Rails 5.0.1
Posted
技术标签:
【中文标题】rake db rake 任务不工作 Ruby 2.4.0 & Rails 5.0.1【英文标题】:rake db rake tasks not working Ruby 2.4.0 & Rails 5.0.1 【发布时间】:2017-06-21 12:40:03 【问题描述】:在我的环境中,每次我运行 rake 任务(目前仅与主动迁移相关)时,都会收到三个弃用警告,然后进程似乎终止了。
➜ job-board-app git:(styles-for-boards-page) ✗ rake db:drop
/Users/jackburum/.rvm/gems/ruby-2.4.0/gems/activesupport-5.0.1/lib/active_support/xml_mini.rb:51: warning: constant ::Fixnum is deprecated
/Users/jackburum/.rvm/gems/ruby-2.4.0/gems/activesupport-5.0.1/lib/active_support/xml_mini.rb:52: warning: constant ::Bignum is deprecated
/Users/jackburum/.rvm/gems/ruby-2.4.0/gems/activesupport-5.0.1/lib/active_support/core_ext/numeric/conversions.rb:138: warning: constant ::Fixnum is deprecated
重置、迁移等也会发生同样的事情。寻找关于我可能需要做什么才能使任务成功运行的想法
【问题讨论】:
【参考方案1】:这只是警告,最好忽略它们。您会看到它们,因为 Rails 5.0.1
与 Ruby
2.4.0 不完全兼容。
如果您对此警告感到恼火并想避免它们,我建议您暂时将 Ruby 降级为 2.3.3
,并在 Rails 5.0.2
发布后再次升级以解决此问题。
【讨论】:
【参考方案2】:首先,在 Rails 5 中,您应该使用 rails task_name
而不是 rake task_name
。
所以,使用这个:
rails db:drop
现在,关于警告,您收到警告是因为您使用的是 ruby 2.4.0。查看ruby 2.4.0 release notes。这些警告来自 activesupport gem 和 will go away in Rails 5.0.2
现在,您可以忽略警告。发布后立即升级到 Rails 5.0.2。
【讨论】:
感谢 rakib 的详细回答。这很有帮助。也感谢您的链接以上是关于rake db rake 任务不工作 Ruby 2.4.0 & Rails 5.0.1的主要内容,如果未能解决你的问题,请参考以下文章