2011-03-23 47 views
4

我嘗試運行rails s時遇到此錯誤。它適用於生產環境,但不適用於本地Mac OSX。Rails 3:jopenssl加載錯誤

任何想法?

/gems/jruby-openssl-0.7.3/lib/openssl.rb:66:in `require': no such file to load -- jopenssl (LoadError) 
    from /Users/username/.rvm/gems/[email protected]/gems/jruby-openssl-0.7.3/lib/openssl.rb:66 
    from /Users/kellymkampen/.rvm/rubies/ruby-1.8.7-p330/lib/ruby/1.8/net/https.rb:102:in `require' 
    from /Users/username/.rvm/rubies/ruby-1.8.7-p330/lib/ruby/1.8/net/https.rb:102 
    from /Users/username/.rvm/gems/[email protected]/gems/oauth-0.4.4/lib/oauth/consumer.rb:2:in `require' 
    from /Users/username/.rvm/gems/[email protected]/gems/oauth-0.4.4/lib/oauth/consumer.rb:2 
    from /Users/username/.rvm/gems/[email protected]/gems/oauth-0.4.4/lib/oauth/client/helper.rb:2:in `require' 
    from /Users/username/.rvm/gems/[email protected]/gems/oauth-0.4.4/lib/oauth/client/helper.rb:2 
    from /Users/username/.rvm/gems/[email protected]/gems/oauth-0.4.4/lib/oauth.rb:10:in `require' 
    from /Users/username/.rvm/gems/[email protected]/gems/oauth-0.4.4/lib/oauth.rb:10 
    from /Users/username/.rvm/gems/[email protected]/gems/bundler-1.0.10/lib/bundler/runtime.rb:68:in `require' 
    from /Users/username/.rvm/gems/[email protected]/gems/bundler-1.0.10/lib/bundler/runtime.rb:68:in `require' 
    from /Users/username/.rvm/gems/[email protected]/gems/bundler-1.0.10/lib/bundler/runtime.rb:66:in `each' 
    from /Users/username/.rvm/gems/[email protected]/gems/bundler-1.0.10/lib/bundler/runtime.rb:66:in `require' 
    from /Users/username/.rvm/gems/[email protected]/gems/bundler-1.0.10/lib/bundler/runtime.rb:55:in `each' 
    from /Users/username/.rvm/gems/[email protected]/gems/bundler-1.0.10/lib/bundler/runtime.rb:55:in `require' 
    from /Users/username/.rvm/gems/[email protected]/gems/bundler-1.0.10/lib/bundler.rb:120:in `require' 
    from /Users/username/rails_projects/socialblast/config/application.rb:7 
    from /Users/username/.rvm/gems/[email protected]/gems/railties-3.0.5/lib/rails/commands.rb:28:in `require' 
    from /Users/username/.rvm/gems/[email protected]/gems/railties-3.0.5/lib/rails/commands.rb:28 
    from /Users/username/.rvm/gems/[email protected]/gems/railties-3.0.5/lib/rails/commands.rb:27:in `tap' 
    from /Users/username/.rvm/gems/[email protected]/gems/railties-3.0.5/lib/rails/commands.rb:27 
    from script/rails:6:in `require' 
    from script/rails:6 

的Gemfile

gem 'rails', '3.0.5' 
gem 'sqlite3-ruby', '1.3.2', :require => 'sqlite3' 
gem 'gravatar_image_tag', '0.1.0' 
gem 'will_paginate', '3.0.pre2' 
gem 'paperclip', "~> 2.3" 
gem 'oauth', '~> 0.4.4' 
gem 'twitter', '~> 1.1.2' 
gem 'carmen' 
gem 'aws-s3' 
gem 'remotipart' 
gem 'jquery-rails', '>= 0.2.6' 
gem 'fb_graph', '>=1.4.0' 
gem 'faker', '0.3.1' 
gem 'rmagick', '2.12.2', :require => "RMagick" 
gem 'yaml_db' 
gem 'haml-rails' 
gem 'compass', '~> 0.10.6' 
gem 'yajl-ruby', '>= 0.7.6' 
gem 'jruby-openssl' 

回答

3

我有這個問題太...這裏是我如何解決它(請注意,我使用JRuby太)。

首先檢查你有ruby -ropenssl -e OpenSSL

OpenSSL的支持。如果再出現任何錯誤,你應該嘗試gem install jruby-openssl

現在,這裏的粗略位:在/gems/jruby-openssl-0.7.3/lib/ openssl.rb,我把第66行從require 'jopenssl'改爲require 'openssl'

它看起來像在JRuby的OpenSSL的:(錯誤

+0

這是愚蠢的,解決它這個樣子。你將如何部署呢? – 2011-11-28 22:48:14

+0

我同意這是一個黑客,我在浴缸有一個很好的磨砂之後,但作爲提問者說「它在生產上工作正常」......問題在於環境而不是代碼/項目,因此部署是一個不同的問題。 – Corin 2011-12-06 00:29:08