config.gem: Unpacked gem authlogic-2.1.5 in vendor/gems has no specification file. Run 'rake gems:refresh_specs' to fix this.
config.gem: Unpacked gem authlogic-2.1.6 in vendor/gems has no specification file. Run 'rake gems:refresh_specs' to fix this.
/disk1/home/slugs/283271_2d484fd_a21d/mnt/config/../vendor/rails/railties/lib/initializer.rb:271:in `require_frameworks': RubyGem version error: rack(1.0.1 not ~> 1.1.0) (RuntimeError)
Above from Heroku Logs. Anyone know what this means? I tried google and tried to produce the .gem file and this is what my .gem file looks like this:
authlogic --version 2.1.6
acl9 --version ">=0.12.0" --source http://gemcutter.org
rack --version 1.0.1
When I run rake gems:refresh_specs I get this error :
littleman@littleman-laptop:~/Desktop/employee_tracker$ rake gems:refresh_specs
(in /home/littleman/Desktop/employee_tracker)
rake aborted!
undefined method `installed_source_index' for #<Gem::SourceIndex:0x00000000bba328>
/usr/local/lib/ruby/gems/1.9.1/gems/rails-2.3.8/lib/rails/gem_dependency.rb:224:in `refresh'
/usr/local/lib/ruby/gems/1.9.1/gems/rails-2.3.8/lib/tasks/gems.rake:53:in `block (3 levels) in <top (required)>'
/usr/local/lib/ruby/gems/1.9.1/gems/rails-2.3.8/lib/tasks/gems.rake:53:in `each'
/usr/local/lib/ruby/gems/1.9.1/gems/rails-2.3.8/lib/tasks/gems.rake:53:in `block (2 levels) in <top (required)>'
/usr/local/lib/ruby/1.9.1/rake.rb:634:in `call'
/usr/local/lib/ruby/1.9.1/rake.rb:634:in `block in execute'
/usr/local/lib/ruby/1.9.1/rake.rb:629:in `each'
/usr/local/lib/ruby/1.9.1/rake.rb:629:in `execute'
/usr/local/lib/ruby/1.9.1/rake.rb:595:in `block in invoke_with_call_chain'
/usr/local/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
/usr/local/lib/ruby/1.9.1/rake.rb:588:in `invoke_with_call_chain'
/usr/local/lib/ruby/1.9.1/rake.rb:581:in `invoke'
/usr/local/lib/ruby/1.9.1/rake.rb:2041:in `invoke_task'
/usr/local/lib/ruby/1.9.1/rake.rb:2019:in `block (2 levels) in top_level'
/usr/local/lib/ruby/1.9.1/rake.rb:2019:in `each'
/usr/local/lib/ruby/1.9.1/rake.rb:2019:in `block in top_level'
/usr/local/lib/ruby/1.9.1/rake.rb:2058:in `standard_exception_handling'
/usr/local/lib/ruby/1.9.1/rake.rb:2013:in `top_level'
/usr/local/lib/ruby/1.9.1/rake.rb:1992:in `run'
/usr/local/bin/rake:31:in `<main>'
This is what I get from deploying to heroku.
littleman@littleman-laptop:~/Desktop/employee_tracker$ git add .
littleman@littleman-laptop:~/Desktop/employee_tracker$ git commit -m "little"
[master 609c8ca] little
9 files changed, 1026 insertions(+), 229 deletions(-)
create mode 100755 .gems.save
littleman@littleman-laptop:~/Desktop/employee_tracker$ git push heroku master
Counting objects: 26, done.
Compressing objects: 100% (14/14), done.
Writing objects: 100% (14/14), 7.95 KiB, done.
Total 14 (delta 9), reused 0 (delta 0)
-----> Heroku receiving push
-----> Rails app detected
-----> Installing gem authlogic 2.1.6 from http://rubygems.org
Successfully installed activesupport-3.0.0
Successfully installed authlogic-2.1.6
2 gems installed
-----> Installing gem acl9 >=0.12.0 from http://gemcutter.org, http://rubygems.org
Successfully installed acl9-0.12.0
1 gem installed
Compiled slug size is 5.1MB
-----> Launching.... done
http://morning-river-39.heroku.com deployed to Heroku
To git@heroku.com:morning-river-39.git
168d74d..609c8ca master -> master
If you go to the site, it will say error. Then when I look at the logs, I see this.
config.gem: Unpacked gem authlogic-2.1.5 in vendor/gems has no specification file. Run 'rake gems:refresh_specs' to fix this.
config.gem: Unpacked gem authlogic-2.1.6 in vendor/gems has no specification file. Run 'rake gems:refresh_specs' to fix this.
/disk1/home/slugs/283271_609c8ca_a21d/mnt/config/../vendor/rails/railties/lib/initializer.rb:271:in `require_frameworks': RubyGem version error: rack(1.0.1 not ~> 1.1.0) (RuntimeError)
from /disk1/home/slugs/283271_609c8ca_a21d/mnt/config/../vendor/rails/railties/lib/initializer.rb:134:in `process'
from /disk1/home/slugs/283271_609c8ca_a21d/mnt/config/../vendor/rails/railties/lib/initializer.rb:113:in `send'
from /disk1/home/slugs/283271_609c8ca_a21d/mnt/config/../vendor/rails/railties/lib/initializer.rb:113:in `run'
from /disk1/home/slugs/283271_609c8ca_a21d/mnt/config/environment.rb:9
from /usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/thin-1.2.6/lib/rack/adapter/rails.rb:42:in `load_application'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/thin-1.2.6/lib/rack/adapter/rails.rb:23:in `initialize'
from /home/heroku_rack/heroku.ru:31:in `new'
from /home/heroku_rack/heroku.ru:31
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:29:in `instance_eval'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:29:in `initialize'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:46:in `new'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:46:in `map'
from /home/heroku_rack/heroku.ru:20
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:29:in `instance_eval'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:29:in `initialize'
from /home/heroku_rack/heroku.ru:13:in `new'
from /home/heroku_rack/heroku.ru:13
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:29:in `instance_eval'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:29:in `initialize'
from /home/heroku_rack/heroku.ru:1:in `new'
from /home/heroku_rack/heroku.ru:1
==> dyno-2135693.log (crash) <==
config.gem: Unpacked gem authlogic-2.1.5 in vendor/gems has no specification file. Run 'rake gems:refresh_specs' to fix this.
config.gem: Unpacked gem authlogic-2.1.6 in vendor/gems has no specification file. Run 'rake gems:refresh_specs' to fix this.
/disk1/home/slugs/283271_609c8ca_a21d/mnt/config/../vendor/rails/railties/lib/initializer.rb:271:in `require_frameworks': RubyGem version error: rack(1.0.1 not ~> 1.1.0) (RuntimeError)
from /disk1/home/slugs/283271_609c8ca_a21d/mnt/config/../vendor/rails/railties/lib/initializer.rb:134:in `process'
from /disk1/home/slugs/283271_609c8ca_a21d/mnt/config/../vendor/rails/railties/lib/initializer.rb:113:in `send'
from /disk1/home/slugs/283271_609c8ca_a21d/mnt/config/../vendor/rails/railties/lib/initializer.rb:113:in `run'
from /disk1/home/slugs/283271_609c8ca_a21d/mnt/config/environment.rb:9
from /usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/thin-1.2.6/lib/rack/adapter/rails.rb:42:in `load_application'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/thin-1.2.6/lib/rack/adapter/rails.rb:23:in `initialize'
from /home/heroku_rack/heroku.ru:31:in `new'
from /home/heroku_rack/heroku.ru:31
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:29:in `instance_eval'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:29:in `initialize'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:46:in `new'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:46:in `map'
from /home/heroku_rack/heroku.ru:20
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:29:in `instance_eval'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:29:in `initialize'
from /home/heroku_rack/heroku.ru:13:in `new'
from /home/heroku_rack/heroku.ru:13
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:29:in `instance_eval'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:29:in `initialize'
from /home/heroku_rack/heroku.ru:1:in `new'
from /home/heroku_rack/heroku.ru:1
-----> An error hap开发者_开发百科pened during the initialization of your app.
This may be due to a typo, wrong number of arguments, or calling a
function that doesn't exist.
Make sure the app is working locally in production mode, by running it
with RAILS_ENV (for Rails apps) or RACK_ENV (for Sinatra or other rack
apps) set to production. e.g. RAILS_ENV=production script/server.
Examine the backtrace above this message to debug.
After removing vendored/gems:
littleman@littleman-laptop:~/Desktop/employee_tracker$ git add -u . && git commit -am "removing vendored gems"
[master 76ec772] removing vendored gems
2 files changed, 214 insertions(+), 255 deletions(-)
littleman@littleman-laptop:~/Desktop/employee_tracker$ git push heroku master
Counting objects: 13, done.
Compressing objects: 100% (6/6), done.
Writing objects: 100% (7/7), 4.84 KiB, done.
Total 7 (delta 4), reused 0 (delta 0)
-----> Heroku receiving push
-----> Rails app detected
-----> WARNING: Detected Rails is not declared in either .gems or Gemfile
Scheduling the install of Rails 2.3.8.
See http://docs.heroku.com/gems for details on specifying gems.
Compiled slug size is 1.1MB
-----> Launching.... done
http://morning-river-39.heroku.com deployed to Heroku
To git@heroku.com:morning-river-39.git
ef97eef..76ec772 master -> master
littleman@littleman-laptop:~/Desktop/employee_tracker$ heroku logs
==> dyno-2135693.log (crash) <==
Missing the Rails 2.3.8 gem. Please `gem install -v=2.3.8 rails`, update your RAILS_GEM_VERSION setting in config/environment.rb for the Rails version you do have installed, or comment out RAILS_GEM_VERSION to use the latest version installed.
-----> Rails can't find the expected version.
Check to ensure you have specified the correct version of Rails in your
Gemfile or .gems. See http://docs.heroku.com/gems for details.
For Rails 2.3.5 or older, you may be affected by a Rails dependency
issue. See http://docs.heroku.com/rails236 for details.
Examine the backtrace above this message to debug.
Can anyone help? Thank you in advance, and greatly appreciated.
SOLUTION SOLVED:
After all of the above, i added the below line of code to .gems then heroku rake db:migrate rails --version 2.3.8 .
Thank you again for helping.
the error message mentions that your gems are packed into vendor/gems folder
config.gem: Unpacked gem authlogic-2.1.5 in vendor/gems has no specification file. Run 'rake gems:refresh_specs' to fix this.
Have you vendored them yourself prior to pushing - I don't ever recall Heroku doing that for any of my apps.
If you have vendored them yourself, are you able to try deleting your vendor/gems folder and then doing git add -u . && git commit -am "removing vendored gems"
before pushing...
One of things you'd want to change is remove the statement for "rack" version in the .gems files. Heroku will take care of it by default.
As for the authlogic did you try running refresh_specs, not sure if that would any problems anyway.
Is this a Rails 3 app ? . If yes http://docs.heroku.com/rails3 use these as instruction. You have to use the bamboo stack in heroku instead of the regular one.
精彩评论