我使用JRuby1.5.2作为我的生产env,并试图将我的依赖关系管理从gem_tools转移到“bundler”。
一旦我签出服务器上的代码并运行一个“bundle install”,它就会出现以下错误:无法在Gemfile中列出的任何gem源代码中找到gem‘jruby (~> 1.5.0) ruby’
我还尝试了jruby安装jruby,然后尝试了Gemfile中的:-S选项,之后我得到了以下错误:
在/usr/local/jruby-1.5.2/lib/ruby/gems/1.8/gems/json-jruby-1.5.0-java.的源代码中找不到gem 'json-jruby (>= 0) java‘源不包含“jruby (>= 0) java”的任何版本。
任何关于这个问题的解决方案的想法都将不胜感激。我希望很多人都像我一样有这个问题。
以下是一些详细信息:JRuby1.5.2(ruby1.8.7 patchlevel 249) (2010-08-201c5e29d) (Java HotSpot(TM) 64位服务器VM 1.6.0_30) amd64-java rails 2.2.2
Gemfile:
....
....
platforms :jruby do
gem 'activerecord-jdbc-adapter', '0.9.4'
gem 'activerecord-jdbcmysql-adapter', '0.9.4'
gem "json-jruby", "~> 1.5.0"
gem 'image_voodoo', '0.7'
gem 'jdbc-mysql', '5.0.4'
gem 'jruby-openssl', '0.2.3'
end
....
....
group :integration, :devwithcaching, :production do
if defined?(JRUBY_VERSION)
gem "json-jruby", "~> 1.5.0"
else
gem 'json_pure', '1.6.5'
end
end发布于 2013-07-15 06:50:16
因此,这是一个古老的答案,但我的答案在最近的JRuby上仍然相关:
因此,最好简单地使用json gem,它在MRI上提供best,在JRuby上提供-java版本,以达到最佳性能(因为1.5.0 ~01/2011版):
ruby gem 'json', '>= 1.5.0'不会将它封装在platforms :jruby块中(更糟糕的是,在Gemfile中使用defined? JRUBY_VERSION )。
注意:在json开始发布一个-java版本的gem的同时(01/2011),JRuby似乎已经停止了发布版本,因此如果JRuby上有问题,并且不太可能修复它们,所以最好避免。
发布于 2014-02-13 21:44:56
这个jruby版本并不存在。看来json-jruby的文档也是错误的,http://rubygems.org/gems/json-jruby。
尝试将版本替换为1.5.0-java,而不是1.5.0。
https://stackoverflow.com/questions/9374139
复制相似问题