Ich verwende Capistrano, um meine App zu implementieren. Ruby wird von RVM auf meinem Mac installiert, auf dem Server ist die gleiche Ruby-Version (2.2.5) installiert von rbenv.LoadError: kann solche Datei nicht laden - active_support
Nachdem ich die Produktion deploy deckeln wollen, wird die folgende Fehlermeldung angezeigt:
SSHKit::Command::Failed: rake exit status: 1
rake stdout: Nothing written
rake stderr: rake aborted!
LoadError: cannot load such file -- active_support
/home/user/app/shared/bundle/ruby/2.2.0/gems/railties-4.1.14/lib/rails.rb:5:in `require'
/home/user/app/shared/bundle/ruby/2.2.0/gems/railties-4.1.14/lib/rails.rb:5:in `<top (required)>'
/home/user/app/shared/bundle/ruby/2.2.0/gems/railties-4.1.14/lib/rails/all.rb:1:in `require'
/home/user/app/shared/bundle/ruby/2.2.0/gems/railties-4.1.14/lib/rails/all.rb:1:in `<top (required)>'
/home/user/app/releases/20160606092956/config/application.rb:3:in `require'
/home/user/app/releases/20160606092956/config/application.rb:3:in `<top (required)>'
/home/user/app/releases/20160606092956/Rakefile:4:in `require'
/home/user/app/releases/20160606092956/Rakefile:4:in `<top (required)>'
/home/user/.rbenv/versions/2.2.5/bin/bundle:23:in `load'
/home/user/.rbenv/versions/2.2.5/bin/bundle:23:in `<main>'
(See full trace by running task with --trace)
DEBUG [0ac2a446] Bundled gems are installed into /home/user/app/shared/bundle.
INFO [0ac2a446] Finished in 0.509 seconds with exit status 0 (successful).
DEBUG [d7061392] Running if test ! -d /home/user/app/releases/20160606043027; then echo "Directory does not exist '/home/user/app/releases/2016060604…
DEBUG [d7061392] Command: if test ! -d /home/user/app/releases/20160606043027; then echo "Directory does not exist '/home/user/app/releases/201606060…
DEBUG [d7061392] Finished in 0.036 seconds with exit status 0 (successful).
INFO [b8dc48fb] Running bundle exec rake assets:precompile as [email protected]
DEBUG [b8dc48fb] Command: cd /home/user/app/releases/20160606043027 && (export RAILS_ENV="production" ; bundle exec rake assets:precompile)
DEBUG [b8dc48fb] rake aborted!
DEBUG [b8dc48fb] LoadError: cannot load such file -- active_support
DEBUG [b8dc48fb] /home/user/app/shared/bundle/ruby/2.2.0/gems/railties-4.1.14/lib/rails.rb:5:in `require'
/home/user/app/shared/bundle/ruby/2.2.0/gems/railties-4.1.14/lib/rails.rb:5:in `<top (required)>'
/home/user/app/shared/bundle/ruby/2.2.0/gems/railties-4.1.14/lib/rails/all.rb:1:in `require'
/home/user/app/shared/bundle/ruby/2.2.0/gems/railties-4.1.14/lib/rails/all.rb:1:in `<top (required)>'
/home/user/app/releases/20160606043027/config/application.rb:3:in `require'
/home/user/app/releases/20160606043027/config/application.rb:3:in `<top (required)>'
/home/user/app/releases/20160606043027/Rakefile:4:in `require'
/home/user/app/releases/20160606043027/Rakefile:4:in `<top (required)>'
/home/user/.rbenv/versions/2.2.5/bin/bundle:23:in `load'
/home/user/.rbenv/versions/2.2.5/bin/bundle:23:in `<main>'
DEBUG [b8dc48fb] (See full trace by running task with --trace)
Dies ist deploy.rb:
lock '3.5.0'
set :application, "app_#{fetch(:stage)}"
set :repo_url, '[email protected]:...'
set :user, 'user'
server "ip_adress", user: fetch(:user), roles: %w(app db web)
set :deploy_to, "/home/#{fetch(:user)}/#{fetch(:application)}"
# Default value for :pty is false
# set :pty, true
set :linked_files, fetch(:linked_files, []).push("config/database.yml")
set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'vendor/bundle', 'public/system')
set :bundle_flags, '--deployment'
set :bundle_jobs, 4
set :keep_assets, 2
set :use_sudo, true
set :rbenv_type, :user
set :rbenv_ruby, "2.2.5"
set :rails_env, fetch(:stage)
set :passenger_restart_with_touch, true
namespace :deploy do
after :restart, :clear_cache do
on roles(:web), in: :groups, limit: 3, wait: 10 do
# Here we can do anything such as:
# within release_path do
# execute :rake, 'cache:clear'
# end
end
end
end
Mein Gemfile:
source 'https://rubygems.org'
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.1.14'
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
gem 'mysql2', '~> 0.3.18'
# Use SCSS for stylesheets
# gem 'sass-rails', '~> 4.0.3'
gem 'sass'
gem 'sass-rails', '~> 5.0'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .js.coffee assets and views
gem 'coffee-rails', '~> 4.0.0'
# See https://github.com/rails/execjs#readme for more supported runtimes
# gem 'therubyracer', platforms: :ruby
gem 'jquery-rails'
gem 'turbolinks'
gem "therubyracer"
gem "less-rails"
# UI
gem 'nprogress-rails'
gem "twitter-bootstrap-rails"
gem "simple-navigation"
gem 'autosize-rails'
gem "emoticons_helper"
### Autentication
gem "devise"
gem 'cancancan', '~> 1.10'
gem 'omniauth'
gem 'omniauth-twitter'
gem 'omniauth-facebook'
gem "omniauth-linkedin"
# utils
gem "quiet_assets"
gem 'social-share-button'
gem 'dragonfly', '~> 1.0.12'
gem 'jbuilder', '~> 2.0'
# bundle exec rake doc:rails generates the API under doc/api.
gem 'sdoc', '~> 0.4.0', group: :doc
# Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
# gem "thin"
gem 'jquery-ui-rails'
gem 'jquery-modal-rails'
gem "capistrano", "~> 3.5.0"
group :development, :test do
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
gem 'capistrano-rbenv', require: false
gem 'capistrano-bundler', require: false
gem 'capistrano-rails', require: false
gem 'capistrano-passenger', require: false
gem 'byebug'
end
gem "activesupport", "~> 4.1.14"
# Use ActiveModel has_secure_password
# gem 'bcrypt', '~> 3.1.7'
# Use unicorn as the app server
# gem 'unicorn'
# Use Capistrano for deployment
# gem 'capistrano-rails', group: :development
# Use debugger
# gem 'debugger', group: [:development, :test]
Der Server ist Amazon EC2 mit Ubuntu, Ruby 2.2.5 (installiert von rbenv).
Ist das der Fehler mit Gem Active_Support, oder mache ich etwas falsch?
Ihre Gemfile.lock Datei löschen und versuchen Bundle Update auszuführen und dann wieder bündeln zu installieren. Ich hoffe es funktioniert für dich. –
@DineshSaini Ich habe diese Lösung vor und jetzt wieder ausprobiert. Aber immer noch der gleiche Fehler :-( – Boomerange
@DineshSaini Nur um zu verdeutlichen, ist es gut, Edelsteine zu installieren und ihre Version zu verwenden. Denn wenn Sie Gemfile.lock löschen, können Sie Ihre Edelsteine beschädigen. So verwenden Sie zum Beispiel Edelstein "devise", " ~> 3.5.6 ', nicht nur gem "devise". – Boomerange