2011-08-22 93 views
7

我在推的Heroku的时间问题,请按照下面的错误错误在推的Heroku,JSON和Ruby 1.9.2

-----> Gemfile detected, running Bundler version 1.0.7 
    Unresolved dependencies detected; Installing... 
    Using --without development:test 
    Fetching source index for http://rubygems.org/ 
    Installing rake (0.9.2) 
    Installing abstract (1.0.0) 
    Installing activesupport (3.0.9) 
    Installing builder (2.1.2) 
    Installing i18n (0.5.0) 
    Installing activemodel (3.0.9) 
    Installing erubis (2.6.6) 
    Installing rack (1.2.3) 
    Installing rack-mount (0.6.14) 
    Installing rack-test (0.5.7) 
    Installing tzinfo (0.3.29) 
    Installing actionpack (3.0.9) 
    Installing mime-types (1.16) 
    Installing polyglot (0.3.2) 
    Installing treetop (1.4.10) 
    Installing mail (2.2.19) 
    Installing actionmailer (3.0.9) 
    Installing arel (2.0.10) 
    Installing activerecord (3.0.9) 
    Installing activeresource (3.0.9) 
    Installing diff-lcs (1.1.2) 
    Installing json (1.5.3) with native extensions 
    /usr/ruby1.9.2/lib/ruby/1.9.1/rubygems/specification.rb:519:in `normalize_yaml_input': invalid byte sequence in US-ASCII (ArgumentError) 
    from /usr/ruby1.9.2/lib/ruby/1.9.1/rubygems/specification.rb:479:in `from_yaml' 
    from /usr/ruby1.9.2/lib/ruby/1.9.1/rubygems/package/tar_input.rb:183:in `load_gemspec' 
    from /usr/ruby1.9.2/lib/ruby/1.9.1/rubygems/package/tar_input.rb:51:in `block in initialize' 
    from /usr/ruby1.9.2/lib/ruby/1.9.1/rubygems/package/tar_reader.rb:64:in `block in each' 
    from /usr/ruby1.9.2/lib/ruby/1.9.1/rubygems/package/tar_reader.rb:55:in `loop' 
    from /usr/ruby1.9.2/lib/ruby/1.9.1/rubygems/package/tar_reader.rb:55:in `each' 
    from /usr/ruby1.9.2/lib/ruby/1.9.1/rubygems/package/tar_input.rb:32:in `initialize' 
    from /usr/ruby1.9.2/lib/ruby/1.9.1/rubygems/package/tar_input.rb:17:in `new' 
    from /usr/ruby1.9.2/lib/ruby/1.9.1/rubygems/package/tar_input.rb:17:in `open' 
    from /usr/ruby1.9.2/lib/ruby/1.9.1/rubygems/package.rb:58:in `open' 
    from /usr/ruby1.9.2/lib/ruby/1.9.1/rubygems/format.rb:63:in `from_io' 
    from /usr/ruby1.9.2/lib/ruby/1.9.1/rubygems/format.rb:51:in `block in from_file_by_path' 
    from /usr/ruby1.9.2/lib/ruby/1.9.1/open-uri.rb:35:in `open' 
    from /usr/ruby1.9.2/lib/ruby/1.9.1/open-uri.rb:35:in `open' 
    from /usr/ruby1.9.2/lib/ruby/1.9.1/rubygems/format.rb:50:in `from_file_by_path' 
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/source.rb:72:in `fetch' 
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/installer.rb:45:in `block in run' 
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/spec_set.rb:12:in `block in each' 
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/spec_set.rb:12:in `each' 
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/spec_set.rb:12:in `each' 
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/installer.rb:44:in `run' 
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/installer.rb:8:in `install' 
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/cli.rb:225:in `install' 
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/vendor/thor/task.rb:22:in `run' 
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/vendor/thor/invocation.rb:118:in `invoke_task' 
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/vendor/thor.rb:246:in `dispatch' 
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/vendor/thor/base.rb:389:in `start' 
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/bin/bundle:13:in `<top (required)>' 
    from /usr/ruby1.9.2/bin/bundle:19:in `load' 
    from /usr/ruby1.9.2/bin/bundle:19:in `<main>' 
    FAILED: http://devcenter.heroku.com/articles/bundler 

! Heroku推拒绝,未能通过Bundler安装宝石

我使用的是Ruby 1.9.2。

+0

你能后的输出 “包安装” 命令? – YOU

回答

1

据当时在另一颗宝石github上这种类似的问题,看起来是因为在gemspec文件

https://github.com/RubyMoney/money/pull/87

我检查JSON 1.5.3和1.5.4源缺乏编码的声明,他们都拥有它。

所以,可能另一个json旁边的宝石,可能没有那条线。

您可能想要在项目根文件夹中找到命令bundle install的宝石。

18

我的解决办法是,增加这Gemfile中的顶部

if RUBY_VERSION =~ /1.9/ 
    Encoding.default_external = Encoding::UTF_8 
    Encoding.default_internal = Encoding::UTF_8 
end 

裁判:http://www.ruby-forum.com/topic/178706