10

bundle installあげてるよ:

> undefined method `ruby' for #<Bundler::Dsl:0x00000001c4e1f8>

修正方法はありますか?Ruby 1.9.3-p125 を使用しています。

4

4 に答える 4

19

Gembundlerのバージョン 1.2では、アプリが使用する必要がある Ruby バージョンを指定できるrubyメソッドが DSL に導入されました。

使用している はこの新しいバージョン用に作成されたようGemfileですが、使用しているバンドラーのバージョンはこのメソッドをサポートしていませんruby。最新のバンドラーをインストールする (インストールする必要がありますgem install bundler) か、Gemfile.

于 2012-07-15T02:27:36.367 に答える
5

Run these commands the problem will fix

ステップ 1: bundler をインストールするgem install bundler
ステップ 2: bundle install

それは問題を修正します..

于 2014-02-21T10:04:10.843 に答える
1

ruby 'something or other'Gemfileを呼び出しています。

このワンライナーは、問題のある行を見つける必要があります (Gemfile と同じディレクトリにいる必要があることに注意してください。ca$h はプロンプトを示します。システムでは、これは である可能性があります>) 。

$ ruby -ne 'print "(line #$.) #$_" if /^\s*ruby/' Gemfile

なぜこれを行ったのか理解できないので、代わりに何をすべきだったかはわかりませんがruby、バンドラーの DSL の一部としての方法はありません。

DSL コードはこちらで確認できます。

Bundler のドキュメントはこちらで、Gemfiles のドキュメントはこちらでご覧いただけます

于 2012-07-14T04:30:41.533 に答える
0

古いバージョンのバンドラーを使用している可能性があります

使用しているバンドラーのバージョンを確認できます

bundle --version

バージョン 1.2 よりも古い場合は、マットの回答に基づいて、おそらく時代遅れです。

私の場合、gem install bundler実行したのですが、実行するのを忘れていたためrbenv rehash(rbenv を使用しています)、インストールしたばかりのバンドラーではなく、古い古いバージョンを使用していました。

于 2014-04-09T03:09:44.317 に答える