【发布时间】:2021-12-22 22:39:12
【问题描述】:
捆绑器版本:1.15.1。 Ruby 版本: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 中的所有 gem 都在 /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 只是重新下载 gem 而不是说“正在使用”,所以需要很长时间。
哪些设置可能导致此问题以及如何使捆绑程序从系统路径 /var/lib/gems/2.3.0 获取 gem?
我已完整阅读了 bundle 和 bundle install 文档,但不知道如何让 bundler 使用系统 gem。除了在生成索引后使用source 'file:///var/lib/gems/2.3.0' 之外,我真的很想避免这种情况并使用更优雅的解决方案。特别是因为它可能会导致重新安装 gems,这比重新下载需要更多的时间。
【问题讨论】: