「バンドラーが見つかりませんでした」エラー


107

実行しようとするbundler updateと、次のエラーが発生します。

.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:247:in
`to_specs': Could not find bundler (>= 0) amongst
[rake-0.8.7, rake-0.8.7, rubygems-update-1.8.4] (Gem::LoadError)

Rubyは初めてですが、何が原因なのか教えてもらえますか?Rake 0.8.7がインストールされています。


1
0ダウン投票バンドルをインストールしていないということです。「gem list b」を実行すると、バンドラーが表示されますか?
ジェイクデンプシー、

回答:


214

bundler gemがインストールされている場合は、「bundle」アップデートを入力していることを確認してください。

bundle update

バンドラーをインストールしていない場合は、を実行してくださいgem install bundler


新しいapplocationを作成した場合-Railsが新しく、このエラーが発生した場合
AMIC MING 2013

2
aを実行しgem list bundler、表示されるかどうかを確認します。そうでない場合は、私の回答に記載されているとおりにインストールする必要があります。
ardavis 2013年

10
これは、rvmを使用してrubyの新しいバージョンをインストールした後に発生しました。それから私はgem install bundler再び走らなければなりませんでした
NRR

61

私はこの問題を抱えていました、そして私はしました:

gem install bundle

「バンドル」ではなく「バンドル」が問題を解決したことに注意してください。

次に、プロジェクトフォルダーで次の操作を行います。

bundle install

次に、以下を使用してプロジェクトを実行できます。

script/rails server

gem install bundle-これも私のために行いました。
Don Cote 2013年

10
「バンドル」gemは、「bundler」を依存関係として宣言する単なるgemであり、本質的にタイプミスを修正することに注意してください。github.com/will/bundle/blob/...
sealocal

13

私も同じ問題を抱えていました。これは私のために働きました:

  1. https://rvm.io/rvm/install/に示すように、rvm / script / rvmを実行し、.profileまたは.bash_profileに追加します

  2. sudoなしでバンドルを使用する



8

コマンドはbundle update(「バンドル」に「r」がない)です。

バンドルがインストールされているかどうかを確認するには、:gem list bundlerまたはさらにwhich bundleコマンドを実行すると、バンドルのバージョンまたはそのパスが表示されます。何も表示されない場合は、と入力してバンドルをインストールしますgem install bundler


7

私は同じ問題を抱えていました.. bashプロファイルに、RVMのものを正しくセットアップしていない何かが起こりました。

bashプロファイルに次の行があることを確認してください:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"  # This loads RVM into a shell session.

次に、「source〜/ .bash_profile」を実行すると、bashプロファイルにあるすべてのものが再ロードされました。

これで問題が解決したようです。


これをありがとう。「バンドル」と「バンドル」の綴り方は知っていましたが、zshを再インストールし、その過程で誤ってこの行を.zshrcから吹き飛ばしたことを完全に忘れていました。私の髪をしばらく引っ張っていました:)
rmurphey

この答えは古いですが、私にとっては解決策でした!
jonnyjava.net

これがプロファイルファイルの最後の行であることを確認してください
rmcsharry


4

正しいrubyとgemsetを使用するために、最初に「rvm use 1.9.2」のようなことをする必要があるかもしれません。「which ruby​​」を実行すると、使用しているルビを確認できます


2

ruby 2.1.0にアップグレードした後、これを入手しました。私はPATH含まれるように、私のログインスクリプトで設定されました.gem/ruby/2.0.0/bin。バージョン番号を更新して修正しました。


2

システムが「ルートレス」で実行されている可能性があります。ファームウェアのnvram変数boot-argsを「rootless = 0」に設定してみてください。コマンドのセットを実行してみてください:

sudo nvram boot-args="rootless=0"; 
sudo reboot

再起動が完了したら、次を実行:

sudo gem install bundler

2

rbenvランニングを使用している場合は、インストールした後でrbenv rehashも問題を解決できます。bundler



1

Capistranoでこの問題が発生した場合:capistranoはを見つけることができませんbundler。その理由としてはgemset、カピストラーノが見ていない他の場所にバンドルをインストールしたことが考えられます。

  1. ジェムセットをリストします。

RVM宝石セットリスト

  1. 特定の宝石セットを使用します。

rvmは 'my_get_set'を使用します

  1. そのgemsetの下にbundlerをインストールします。

gem install bundler

次に、デプロイタスクで再試行します。


0

私の場合、システムに古いRubyが残っていて、rvmに登録されていなかったと思います。パス変数とgemリストに問題がなくても、Capistranoでのデプロイメント中に古いRubyを使用します。

そして、私は、rvmでインストールしたRubyがデフォルトに設定されていないことに気付きました。ランニング

rvm alias create default <rvm_registered_ruby>

修正しました。


0

念のため、Bundler 2.1.2で同様のエラーが発生し、次のように解決しました。

sudo gem install bundler -v 1.17.3

複数のバージョンのバンドルがインストールされている場合は、次の方法で特定のバージョンのバンドルを実行できます。 bundle _1.17.3_ exec rspec

後のバージョンのバンドラーはかなりバグが多いようです(2つのオペレーティングシステムで3つの異なるプロジェクトに問題がありました)。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.