私はRails Wayの本を読んでいました。また、 "バンドルパッケージ"の実行についても説明します。これはあなたのアプリがベンダー/キャッシュで使うすべての.gemファイルを保存します。バンドルインストールを実行すると、他の場所にある宝石にベンダー/キャッシュ内の宝石が優先されます。私は、RVMを使用していますので、私はRVMでこれをテストした:rvmのバンドルパッケージ
rvm gemset create rent_prototype
rvm use [email protected]_prototype
gem install rails
rvm gemdir
/home/viggy/.rvm/gems/[email protected]_prototype
$ cd /home/viggy/.rvm/gems/[email protected]_prototype
$ ls -l devise-4.1.1
ls: cannot access devise-4.1.1: No such file or directory
私はRVMとgemsetを作成し、工夫の宝石がインストールされている場合にチェックの上、それはGemfileではないので、それはありませんでした。今ではバンドルパッケージを使用しています:
$ cd -
$ bundle package
Updating files in vendor/cache
* rake-11.1.2.gem
* i18n-0.7.0.gem
* json-1.8.3.gem
...
$ cd vendor/cache
$ ls -l devise-4.1.1
ls: cannot access devise-4.1.1: No such file or directory
もちろん、ベンダー/キャッシュにもデベロッパの宝石はありません。
それから私は、Gemfileを変更し、追加します。
gem 'devise'
は、その後、私はbundle install
を実行します。工夫がインストールされた場所
今私は確認してください。
$ bundle show devise
/home/viggy/.rvm/gems/[email protected]_prototype/gems/devise-4.1.1
$ cd vendor/cache
$ ls -l devise-4.1.1
ls: cannot access devise-4.1.1: No such file or directory
私は宝石をインストールするときに、それはRVMフォルダにインストールされます。それは他の場所へのベンダー/キャッシュを好まない。その場合、rvmを使用しているときに "バンドルパッケージ"の目的は何ですか?
deviseを追加した後にバンドルパッケージを実行しませんでした。それがキャッシュにない理由は何ですか、あなたはインストールを実行しました。 – Doon