LoginSignup
1
2

More than 3 years have passed since last update.

Heroku push時にcan't find gem bundler (>= 0.a) with executable bundle

Last updated at Posted at 2019-06-18

背景

Heroku push時にbundler関係でエラー発生したのでメモ。
rbenv versions:
system
2.3.1
2.3.7
* 2.5.0 (set by /Users/hogehoge/rails/weaver/.ruby-version)
2.5.1

エラー内容

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)

たまにこのエラー見る。bundlerインストールで解決できたようなと思いながら、ググると、、
下記の記事がヒットしました!エラー内容似てる!
https://qiita.com/sshuuu/items/213b4e82167317e1ebb3

この記事によると、Gemfile.lockに記載されているBUNDLE_WITHのバージョンがインストールされているbundlerのバージョンと異なっていることが原因とのこと。
なるほど。調べてみる。

bundler-v:
Bundler version 2.0.2

Gemfile.lock
BUNDLED WITH
   2.0.2

え、、違わないんだが、、。どういうこと、、。

かなりハマりましたが、結論をいうとGemfile.lockに記載されているBUNDLE_WITHのバージョン2.0.2を手動で、1.17.3に変更。
次にバージョン1.17.3のbundlerをインストール。
あとは、下記の流れで、もう一度herokuにpushで解決できました!

Gemfile.lock
BUNDLED WITH
   1.17.3
gem install bundler -v '1.17.3'
bundle install
git add -A
git commit -m "hoge"
git push
git push heroku master

Gemfile.lockは基本的に触らないものと考えていたので、手動で変更させることになかなか気がつきませんでした。
参考になれば幸いです。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2