Search code examples
ruby-on-railsrubyrubygemsuploader

Cannot generate uploader Picture on rails web app


I'm following the railstutorial by michael hartl and got stuck in Chapter 11, where he implements the uploading of images. After updating my gemfile to

source 'https://rubygems.org'

gem 'rails', '4.2.4'
gem 'sqlite3'
gem 'sass-rails', '5.0.2'
gem 'uglifier', '2.5.3'
gem 'coffee-rails', '~> 4.1.0'
gem 'bootstrap-sass', '3.2.0.0'
gem 'bcrypt', '3.1.7'
gem 'faker', '1.4.2'
gem 'carrierwave',             '0.10.0'
gem 'mini_magick',             '3.8.0'
gem 'fog',                     '1.26.0'
gem 'will_paginate', '3.0.7'
gem 'bootstrap-will_paginate', '0.0.10'
gem 'jquery-rails', '4.0.3'
gem 'turbolinks', '2.3.0'
gem 'jbuilder', '~> 2.2.3'
gem 'sdoc', '~> 0.4.0', group: :doc

group :development, :test do
  gem 'byebug', '3.4.0'
end

group :development do
  gem 'web-console', '~> 2.0'
  gem 'spring'
end

group :test do
    gem 'minitest-reporters', '1.0.5'
    gem 'mini_backtrace',     '0.1.3'
  gem 'guard-minitest',     '2.3.1'
end

I ran bundle and the gems installed without trouble. But when I try to run

rails generate uploader Picture

I get the following message:

/home/user/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/fog-1.26.0/lib/fog/joyent/compute.rb:3:in `require': cannot load such file -- net/ssh (LoadError)
from /home/user/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/fog-1.26.0/lib/fog/joyent/compute.rb:3:in `<top (required)>'
from /home/user/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/fog-1.26.0/lib/fog/joyent.rb:1:in `require'
from /home/user/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/fog-1.26.0/lib/fog/joyent.rb:1:in `<top (required)>'
from /home/user/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/fog-1.26.0/lib/fog.rb:41:in `require'
from /home/user/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/fog-1.26.0/lib/fog.rb:41:in `<top (required)>'
from /home/user/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/carrierwave-0.10.0/lib/carrierwave/storage/fog.rb:3:in `require'
from /home/user/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/carrierwave-0.10.0/lib/carrierwave/storage/fog.rb:3:in `<top (required)>'
from /home/user/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/carrierwave-0.10.0/lib/carrierwave/storage.rb:9:in `require'
from /home/user/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/carrierwave-0.10.0/lib/carrierwave/storage.rb:9:in `<top (required)>'
from /home/user/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/carrierwave-0.10.0/lib/carrierwave.rb:78:in `require'
from /home/user/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/carrierwave-0.10.0/lib/carrierwave.rb:78:in `<top (required)>'
user@ubuntuServer:/media/sf_ubuntu/hello_world$    from /home/user/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/bundler-1.10.6/lib/bundler/runtime.rb:76:in `require'
from /home/user/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/bundler-1.10.6/lib/bundler/runtime.rb:76:in `block (2 levels) in require'
from /home/user/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/bundler-1.10.6/lib/bundler/runtime.rb:72:in `each'
from /home/user/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/bundler-1.10.6/lib/bundler/runtime.rb:72:in `block in require'
from /home/user/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/bundler-1.10.6/lib/bundler/runtime.rb:61:in `each'
from /home/user/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/bundler-1.10.6/lib/bundler/runtime.rb:61:in `require'

So far I've tried changing the versions of the gems, and running a bundle update, but with no effect. I've even tried rolling back my app using git to try again, with no effect.

Anyone here have an idea what's going on and how to fix it?


Solution

  • Add this line to your Gemfile and bundle installagain:

    gem 'net-ssh'