我试图为此找到一些解决方案,但我真的找不到与运行rails命令时出现的错误相关的任何内容:
rails生成模型书名:字符串摘要:text isbn:string
/home/vmu/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/activesupport-5.0.1/lib/active_support/xml_mini.rb:51: warning: constant ::Fixnum is deprecated
/home/vmu/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/activesupport-5.0.1/lib/active_support/xml_mini.rb:52: warning: constant ::Bignum is deprecated
/home/vmu/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/activesupport-5.0.1/lib/active_support/core_ext/numeric/conversions.rb:138: warning: constant ::Fixnum is deprecated
Running via Spring preloader in process 3579
Expected string default value for '--jbuilder'; got true (boolean)
invoke active_record
identical db/migrate/20170104114702_create_books.rb
identical app/models/book.rb
invoke test_unit
identical test/models/book_test.rb
identical test/fixtures/books.yml
有人知道可能导致这些错误的原因吗?
答案 0 :(得分:79)
出现此警告是因为您使用的是ruby 2.4.0。
此版本引入了此更改:Unify Fixnum and Bignum into Integer
请点击此处查看公告:https://www.ruby-lang.org/en/news/2016/12/25/ruby-2-4-0-released/
警告来自activesupport gem,它是rails的一部分,将在即将发布的版本中修复。
现在你可以忽略这些警告。
更新: Rails 5.0.2 has been released,摆脱了警告。
答案 1 :(得分:18)
我通过更新rails
修复了我的问题bundle update rails
答案 2 :(得分:9)
我假设您使用的是Rails 5?查看this link(向下)。看起来这些警告将随着#27458的发布而消失。
答案 3 :(得分:6)
如果主动支持中的这些弃用警告是您看到的唯一警告,您可以通过传递带有-W0选项的RUBYOPT bash变量来抑制它们,这将使静音。
所以代替rails server
尝试:RUBYOPT="-W0" rails server
或RUBYOPT="-W0" bin/rails server
在rails 5.0中你可能想养成使用bin / rails而不仅仅是rails的习惯,因为那是全局rails版本,可能与你的本地rails版本相同或不同。
答案 4 :(得分:0)
我已将therubyracer
个宝石从版本“ 0.12.2”修复为“ 0.12.3”