2011-12-19 7 views
7

bundle install --standaloneはすばらしいアイデアのようですが、私はそれを使用する方法を頭に入れて苦労しています。それはあなたにルビー掃除機やバンドラをインストールする必要があります。Railsアプリケーションでbundle install --standaloneを使用するにはどうすればよいですか?

私のgemのlibディレクトリとextディレクトリを一見して順番に追加するbundler/setup.rbを生成します。おそらく、私がしなければならないことは、それをロードパスに追加することだけです。

しかし、bundler/setup.rbは実際には何も必要ないようです。

if defined?(Bundler) 
    Bundler.require(*Rails.groups(:assets => %w(development test))) 
end 

さて、それはこの小さな小唄で必要ない通常バンドラ/セットアップはどちらか何かを必要としないので、大丈夫ですと、デフォルトでBundler.require

のRailsを呼び出すためのアプリにそれを残し

この時点で、は定義されていません(bundler/setup.rbは定義していません)ので、ブロックをスキップします。

どのように正確に私はバンドラを必要としますか? bundle install --standalone実際にバンドルされているバンドラーの場合は、手動でrequire bundlerと呼んでを定義しても、それはバンドルから除外されているようです。

実際にbundle install --standaloneを使用しているアプリがありますか?あれば、どうですか?

答えて

2

これをRailsで使用するには、Bundler.requireコールを削除し、必要な場所にすべてのrequire行を手動で追加します。

これには長所と短所があります。プラスの面では、ロード時にすべての宝石が必要とされるわけではないため、アプリの読み込みを高速化できます。また、どこの宝石が使われているのかも明確になっています。

ダウンサイドでは、アプリケーションに必要な呼び出しをすべて追加する必要があります。

もっと詳しい説明はMyron Marstons blog postをご覧ください。

-1

バンドルインストール--deployment#インストールルビー&バンドルされた宝石をプロジェクトのディレクトリ

関連する問題