jruby Bundler 找不到兼容的 json 版本

Posted

技术标签:

【中文标题】jruby Bundler 找不到兼容的 json 版本【英文标题】:jruby Bundler could not find compatible versions json 【发布时间】:2014-01-17 22:44:53 【问题描述】:

jruby 新手。尝试运行时出现错误

jruby -S bundle exec rake assets:precompile

Bundler could not find compatible versions for gem "json":
  In snapshot (Gemfile.lock):
    json (1.8.1)

  In Gemfile:
    carrierwave (>= 0) ruby depends on
      json (>= 1.7) ruby

我尝试删除 Gemfile.lock 并运行“jruby -S bundle install”,但没有帮助。

我在 Mac 上使用 jruby 1.7.3 和 ruby​​ 1.8.7。我之前已经成功运行过预编译,并且没有对 Gemfile 进行任何更改。

我的 Gemfile(自去年 10 月以来一直没有更改,以前可以使用):

source 'https://rubygems.org'

gem 'rails', '3.2.13'

# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'

gem 'activerecord-jdbcmysql-adapter'
gem 'jruby-openssl'
gem 'mini_magick'
gem 'carrierwave'


# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'bourbon'

  #gem 'coffee-rails', '~> 3.2.1'

  # See https://github.com/sstephenson/execjs#readme for more supported runtimes
  gem 'therubyrhino'

  gem 'uglifier', '>= 1.0.3'
end

gem 'uuidtools'
gem 'amazon-ses-mailer'
gem 'jquery-rails'

# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'

# To use Jbuilder templates for JSON
# gem 'jbuilder'

# Use unicorn as the app server
# gem 'unicorn'

# Deploy with Capistrano
# gem 'capistrano'

# To use debugger
# gem 'debugger'

谢谢

【问题讨论】:

你能分享你的Gemfile吗? 【参考方案1】:

这看起来像bundler issue。将 Bundler 更新到 1.5.2 并重试:

jruby -S gem install bundler

【讨论】:

感谢您的回复。我将捆绑器升级到 1.5.2,并删除了 Gemfile.lock。现在我在运行“jruby -S bundle install”时遇到以下异常从rubygems.org获取gem元数据............从rubygems.org获取其他元数据..解决依赖关系......线程中的异常“ JRubyWorker-2" org.jruby.exceptions.RaiseException: (Result) Bundler::SafeCatch::Internal::Result at RUBY.throw(/usr/local/Cellar/jruby/1.7.3/libexec/lib/ruby/gems /shared/gems/bundler-1.5.2/lib/bundler/safe_catch.rb:70) 在 ... 现在很有趣。阅读捆绑器源代码,您似乎遇到了 throw 而没有 catch... 您可以将其重新运行为 DEBUG=1 jruby -S bundle install 并将整个堆栈跟踪编辑到您的问题中吗? 谢谢你,阿什。日志很长,所以我把它放在pastebin.com/FHUu7HBV

以上是关于jruby Bundler 找不到兼容的 json 版本的主要内容,如果未能解决你的问题,请参考以下文章

Bundler 找不到 gem 的兼容版本

Bundler 找不到 gem "rails" 的兼容版本:用于狂欢

Bundler 找不到 gem "spring" 的兼容版本

Error-Bundler 找不到 gem“bundle”的兼容版本:在 Heroku 上推送项目时

Bundler 找不到 gem mandrill-api 的 gem "excon" 的兼容版本

jruby tomcat bundler aws——“解决需求”堆栈太深