2011-01-19 10 views
3

ubuntu 10.04 slimy lynxなどと呼ばれるものは、プロダクションアプリのOSです。私はrvmもインストールしています。それ以外はMac上にあるので、開発者とプロダクションのルビーと宝石は同じです。Rails 3 bundler&rvm:バンドルされた宝石は宝石リストに表示されませんか?

今は、gem listのバンドルされたすべての宝石を見るのに慣れていますが、通常のようにgem listを生産すると、バンドルされた宝石は表示されません。

これはrails cまたは他の宝石を使用できないことを意味します。

私はbundle exec rails cか何かを実行してコンソールを使用することができますが、なぜこれが起こっているのか、それを修正する方法についてもっと興味がありますので、宝石リストにすべての宝石があります。それはちょうどいい感じです。

思考?

答えて

11

Macの開発モードでは、gemはデフォルトのgemパスにインストールされますが、プロダクションモードではプロジェクト固有のフォルダにインストールされます。各マシンでbundle show railsを実行してみると、私の言いたいことがわかります。

gem listを実行するとメインのgemフォルダが表示され、プロダクションの宝石はプロジェクト固有のフォルダに格納されているため、グローバルgemコマンドはそこに表示されません。したがって、サーバー上でプロジェクト固有のgemコマンドを実行するには、bundle execを実行する必要があります。私の目的のためにbeエイリアスをbundle execに作成しました。また、あなたのプロジェクトの宝石を表示するには、bundle listを実行してください。

この背景にはhttp://gembundler.com/v1.3/rationale.html#deploying-your-applicationを参照してください。

+0

本日現在のリンクが無効です。 – ardavis

+0

@ardavisを修正しました! –

+0

パーフェクト。どうもありがとう :) – ardavis

関連する問題