我检查了我的系统更新,它显示heroku和heroku工具带都更新了,但之后我收到了这个错误
heroku/vendor/gems/json-1.7.7/lib/json/common.rb:67:in `initialize': no implicit conversion of nil into Hash (TypeError)
我无法运行任何heroku命令。以前工作正常,但现在不行。
heroku,heroku-versions 3.9.4,之前是 3.9.1
xxxxx@xxxxx:~$ heroku
/usr/local/heroku/vendor/gems/json-1.7.7/lib/json/common.rb:67:in `initialize': no implicit conversion of nil into Hash (TypeError)
from /usr/local/heroku/vendor/gems/json-1.7.7/lib/json/common.rb:67:in `new'
from /usr/local/heroku/vendor/gems/json-1.7.7/lib/json/common.rb:67:in `generator='
from /usr/local/heroku/vendor/gems/json-1.7.7/lib/json/ext.rb:17:in `<module:Ext>'
from /usr/local/heroku/vendor/gems/json-1.7.7/lib/json/ext.rb:12:in `<module:JSON>'
from /usr/local/heroku/vendor/gems/json-1.7.7/lib/json/ext.rb:9:in `<top (required)>'
from /home/akaruilabs/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/akaruilabs/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /usr/local/heroku/vendor/gems/json-1.7.7/lib/json.rb:58:in `<module:JSON>'
from /usr/local/heroku/vendor/gems/json-1.7.7/lib/json.rb:54:in `<top (required)>'
from /home/akaruilabs/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/akaruilabs/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /usr/local/heroku/lib/heroku/cli.rb:18:in `<top (required)>'
from /home/akaruilabs/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/akaruilabs/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /usr/local/heroku/bin/heroku:23:in `<main>'
最佳答案
我也有同样的错误。请注意,产生错误的 json
库不是来自您的 gems,而是来自 heroku toolbelt 发行版。所以更新 json
是不够的,我认为这应该作为错误报告给heroku。
我目前的解决方法是安装一个新的 json
gem 并从 heroku 工具带中删除其过时版本 1.7.7
:
gem install json
sudo mv /usr/local/heroku/vendor/gems/json-1.7.7 /some/tmp
gem list json
*** LOCAL GEMS ***
json (1.8.1)
heroku version
heroku-toolbelt/3.9.4 (x86_64-linux) ruby/2.1.1
更新:似乎此问题已在 3.9.5
中修复
关于ruby-on-rails - Heroku 工具带 `initialize' : no implicit conversion of nil into Hash (TypeError),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24881973/