宝石のインストールに関する簡単な質問 - bundle install
を使用すると、私のプロジェクトに必要な宝石がインストールされますが、自分のコンピュータの他のプロジェクトには影響しません。もし私がgem install name_of_gem
を使用しているのであれば、それは現在のプロジェクトにのみ影響しますか、それともレール(一般的なインストール)を使って私のコンピュータ上のすべてのプロジェクトに影響しますか?一般的に私は、宝石のインストールがいかに正確に行われているかについて少し混乱していると思うので、答えが一般的な背景情報を含んでいれば、これが理解できるようになります。Rails - gemのインストール
答えて
通常、宝石はシステム全体にインストールされていますが、ホームディレクトリにはこれが不可能です。デフォルトでは、アプリケーションがgemを使用すると、RubyGemsは最新のインストール済みバージョンをロードします。
require 'rubygems'
gem 'RedCloth', '3.0'
バンドラーは、プロジェクトを開発するために使用されている宝石のバージョンを追跡する便利なツールで、その後、あなたはできます:あなたが特定のバージョンを使用したい場合は、RubyGemsのは、この構文を使用していることを行うことができます1人でインストールするには、bundle install
で慌てて、それらの正確なバージョンをロードしてください。アプリケーションは、Bundlerコードをロードすることによってそれらをロードします.Bundlerコードは、Gemfileで指定されたバージョンを使用するRubyGemの一部をオーバーライドします。
デフォルトでは、BundlerはRubyGemsを呼び出して宝石(システム全体またはあなたのホームディレクトリ)をインストールするだけです。 bundle package
を使って、vendor/cache
というディレクトリに宝石を保存するように頼むことができます。これにより、宝石をソースコードとともに配布することができるように、それらを凍結することができます。
あなたのRuby環境をさらに孤立させたい場合は、別のプロジェクトで使用するために孤立した宝石セット、実際には異なるバージョンのRubyをセットアップできるように、RVMを使用する必要があります。 RVMを使用している場合、RubyGemsがインストールするディレクトリは、現在のRubyのバージョンとgemsetに特有のものです。
あなたが宝石をインストールバンドルんRubyGemsのでを設置していて、RVMを使用して、あなたのプロジェクトのためのgemsetsを設定している場合を除き、すべてのプロジェクトのために利用できるようになります。
あなたがRVMを使用していないとあなたはあなたがsudoのそれはだ宝石をインストールする場合は、お使いのオペレーティングシステムは、おそらく、あなたの現在のユーザーのファイル(通常は〜/ .gem)で宝石をインストールしようとしているが宝石をインストールしますあなたのシステムRubyがインストールされている場所がどこにでもインストールされます。
RVMをセットアップするには、宝石とルビーの別々のグループを管理することをお勧めします。上にリンクされたウェブサイト、またはa simple tutorial I wrote to use itを読むことができます。
- 1. MySQL GemとRails 3(Lion 10.7)のインストール
- 2. ローカルのGem Rails 4.2をインストールする
- 3. Rails、インストールされたGemバージョン、Gemfile.lockバージョン
- 4. FXRuby Gemのインストール
- 5. Githubにブランチの特定のリビジョンのRails Gemをインストールします。
- 6. Devise Ruby Gemインストール時のNameError
- 7. Linux Rails Gemインストールエラー
- 8. Rails 3 acts_as_commentable_with_threading gem
- 9. RailsシンプルカレンダーGemエラー
- 10. Rails foursquare2 gem
- 11. Rails bootsrap-navbar gem
- 12. Rails Twitter Gem Omniauth
- 13. rails:backbone-on-rails gem-
- 14. Rails thumbs_up gem vote_exclusively_for
- 15. Missing Rails Gem
- 16. Rails gem path error
- 17. Rails "Browser Gem"のサポート
- 18. Rails gem axlsx gem複数のシート
- 19. gem thinreports-railsをWindows 10にインストールする際のエラー
- 20. Railsエンジンのインストールgem - パスが見つかりません
- 21. Rails - Gemのインストール中にエラーが発生する
- 22. Rails 3.1 Gemインストールで特定のファイルを見つける
- 23. Railsのインストールに失敗しました - なぜNokogiri gem?
- 24. pg gemをRailsにインストールできません(PostgreSQL 9.6を使用)
- 25. Rails 3.2.3 sqlite gemがインストールされていない
- 26. Ruby Gem NokogiriがRailsにインストールされていません。3.2511
- 27. デバッガgem - Rails - Mac OSX Mavericksをインストールできない
- 28. Rails 3とgem devise_oauth2_providableをインストールできない
- 29. Railsプラグインにモビリティgemをインストールできない
- 30. sudo gem installを使わずにRailsをインストールするには
私のケースでは、1つのプロジェクトでRake 0.9.2が使用されています.Rake 0.8.7に切り替える必要があります。しかし、私がRake 0.9.2に残したい2番目のプロジェクトです。 'gem uninstall rake -v = 0.9.2'とバンドル内で' bundle update 'を使用してrake 0.8.7を指定した場合、これはrake 0.9.2に依存する2番目のプロジェクトにも影響しますか?そしてもしそうなら、私はこれをどのように解決するのですか? – Kvass
@Kvass:RVMはこの場合に適しています。あなたが望むなら、Gemfileで指定し、代わりに 'bundle exec rake'を使うことができます(私はこれがうまくいくと思いますが、チェックしていません)。しかし、Bundlerは環境の分離ではなく、依存性の管理を目的としています。後者が必要な場合は、RVMを使用する必要があります。 RVMとBundlerはうまくいっています。 –
rvmはWindows上で動作しますか/ Windows用のガイドはどこにありますか? – Kvass