我在Heroku中有一个现有的Rails应用程序,正在尝试将其推送到该位置,但是每次我尝试将其推送到Heroku时,都会出现此错误
There was an error parsing your Gemfile, we cannot continue
remote: ! /app/tmp/buildpacks/b7af5642714be4eddaa5f35e2b4c36176b839b4abcd9bfe57ee71c358d71152b4fd2cf925c5b6e6816adee359c4f0f966b663a7f8649b0729509d510091abc07/vendor/ruby/heroku-18/lib/ruby/2.5.0/rubygems.rb:289:in `find_spec_for_exe': can't find gem bundler (>= 0.a) with executable bundle (Gem::GemNotFoundException)
remote: ! from /app/tmp/buildpacks/b7af5642714be4eddaa5f35e2b4c36176b839b4abcd9bfe57ee71c358d71152b4fd2cf925c5b6e6816adee359c4f0f966b663a7f8649b0729509d510091abc07/vendor/ruby/heroku-18/lib/ruby/2.5.0/rubygems.rb:308:in `activate_bin_path'
remote: ! from /tmp/d20190617-88-bonyg7/bundler-2.0.1/bin/bundle:23:in `<main>'
从那里,我认为最突出的是:
There was an error parsing your Gemfile, we cannot continue
can't find gem bundler (>= 0.a) with executable bundle (Gem::GemNotFoundException)
我的Gemfile.lock
指出我的应用已与2.0.2
捆绑在一起
当我做gem list
时,捆绑器零件会给我这个bundler (default: 2.0.2, default: 1.17.2)
感谢您的帮助!谢谢!
编辑: 这是我的宝石文件
source 'https://rubygems.org'
ruby '2.6.3'
gem 'bootsnap', require: false
gem 'devise'
gem 'jbuilder', '~> 2.0'
gem 'pg', '~> 0.21'
gem 'puma'
gem 'rails', '5.2.3'
gem 'redis'
gem 'autoprefixer-rails'
gem 'font-awesome-sass', '~> 5.6.1'
gem 'sassc-rails'
gem 'simple_form'
gem 'uglifier'
gem 'webpacker'
gem 'bundler'
gem 'material-sass', '4.1.1'
gem 'cloudinary'
gem 'carrierwave'
group :development do
gem 'web-console', '>= 3.3.0'
end
group :development, :test do
gem 'pry-byebug'
gem 'pry-rails'
gem 'listen', '~> 3.0.5'
gem 'spring'
gem 'spring-watcher-listen', '~> 2.0.0'
gem 'dotenv-rails'
end
答案 0 :(得分:2)
这里的问题是Heroku无法使用您要求他使用的捆绑软件。当您要求Heroku使用他们知道的捆绑软件时,可以使用许多解决方案对其进行修复(据我所知,2.0.2不起作用)。
打开Gemfile.lock并在文件末尾替换
BUNDLED WITH
2.0.2
使用
BUNDLED WITH
2.0.1
要长期解决此问题,您只需gem uninstall bundler
然后运行gem install bundler -v 2.0.1