捆綁版本:1.15.1. 紅寶石版本:2.3.1. 我有(來自gem env):
- GEM PATHS:
- /var/lib/gems/2.3.0
- /root/.gem/ruby/2.3.0
- /usr/lib/x86_64-linux-gnu/rubygems-integration/2.3.0
- /usr/share/rubygems-integration/2.3.0
- /usr/share/rubygems-integration/all
來自 Gemfile.lock 的所有 gems 都存在于/var/lib/gems/2.3.0. 但是 bundler 不會嘗試重新使用這些,而是??每次都會嘗試重新下載。
我的.bundle/config:
---
BUNDLE_PATH: "vendor/bundle"
BUNDLE_BIN: "vendor/bin"
BUNDLE_DISABLE_SHARED_GEMS: "true" <--- removing this config entry doesn't help
運行bundle install只是重新下載 gems 而不是說“使用”,所以需要很長時間。
哪些設定可能會導致這種情況以及如何讓捆綁程式從系統路徑中獲取 gems /var/lib/gems/2.3.0?
我已經完全閱讀了 bundle 和 bundle install 檔案,但看不到如何讓 bundler 使用系統 gem。除了source 'file:///var/lib/gems/2.3.0'在生成索引后使用之外,但我真的很想避免這種情況并使用更優雅的解決方案。特別是因為它可能會導致 gem 被重新安裝,這比重新下載需要更多的時間。
uj5u.com熱心網友回復:
您已設定BUNDLE_DISABLE_SHARED_GEMS為true。此設定指示 bundler 專門忽略任何系統安裝的 gem。相反,bundler 將所有必需的 gem 下載到您的BUNDLE_PATH.
如果您想在適當的情況下使用系統安裝的 gem,請BUNDLE_DISABLE_SHARED_GEMS從您的捆綁配置中洗掉該設定。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/360002.html
