Невозможно отправить мое приложение rails в heroku, говорит, что произошла ошибка gemfile

#ruby-on-rails #ruby #heroku #command-line

#ruby-on-rails #ruby #heroku #командная строка

Вопрос:

Я новичок, пытаюсь отправить свое приложение rails в heroku, но там написано, что push отклонен.

Я рассмотрел некоторые похожие проблемы в stackoverflow, но ни одно из решений, похоже, не решает это для меня.

Вот код из терминала

 Counting objects: 234, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (200/200), done.
Writing objects: 100% (234/234), 393.61 KiB | 0 bytes/s, done.
Total 234 (delta 37), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Ruby app detected
remote: -----> Compiling Ruby/Rails
remote:
remote:  !
remote:  !     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/d20190419-87-z1jfer/bundler-2.0.1/bin/bundle:23:in `<main>'
remote:  !
remote:  !     Push rejected, failed to compile Ruby app.
remote:
remote:  !     Push failed
remote: Verifying deploy...
remote:
remote: !       Push rejected to london-learning.
remote:
To https://git.heroku.com/london-learning.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/london-learning.git'
 

И это мой Gemfile

 source 'https://rubygems.org'
ruby '2.4.4'

gem 'bootsnap', require: false
gem 'devise'
gem 'jbuilder', '~> 2.0'
gem 'pg', '~> 0.21'
gem 'puma'
gem 'rails', '5.2.1'
gem 'redis'

gem 'autoprefixer-rails'
gem 'font-awesome-sass', '~> 5.6.1'
gem 'sassc-rails'
gem 'simple_form'
gem 'uglifier'
gem 'webpacker'

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
 

Буду признателен за любую помощь. Спасибо!

Комментарии:

1. Вы видели devcenter.heroku.com/articles/bundler-version ? Похоже, связано

Ответ №1:

Попробуйте вручную установить bundler

 gem install bundler -v 1.17.3
bundle _1.17.3_ install
git commit -am "Bundler 1.17.3 was installed"
git push heroku master
 

Комментарии:

1. Хм, похоже, ему не нравится вторая строка: не удалось найти команду » 1.17.3 «, чего пытается достичь 2-я строка?

2. Скопируйте построчно и выполните. Это правильный синтаксис. 2-я строка выполняется с определенной версией bundler.

3. Да, он по-прежнему говорит, что не удалось найти команду » 1.17.3 «. (с подчеркиванием вокруг числа) после выполнения второй строки

4. Это появляется после запуска первой строки /home/alxf95/.rbenv/rbenv.d/exec/gem-rehash/rubygems_plugin.rb:6: предупреждение: Небезопасный мир, доступный для записи, каталог /home/alxf95/.rbenv/ версии в ПУТИ, режим 040777 Успешно установлен bundler-1.17.3 установлен 1 gem