为什么捆绑器不使用系统宝石?
Why bundler doesn't use system gems?
捆绑器版本: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 中的所有宝石都在 /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 而不是说 'Using' 所以需要很长时间。
可能导致此问题的设置是什么以及如何使捆绑程序从系统路径 /var/lib/gems/2.3.0
获取 gems?
我已经完整阅读了 bundle 和 bundle install 文档,但看不出如何让 bundler 使用系统 gems。除了在生成索引后使用 source 'file:///var/lib/gems/2.3.0'
之外,但我真的很想避免这种情况并使用更优雅的解决方案。特别是因为它可能会导致重新安装 gems,这比重新下载花费的时间更多。
您已将 BUNDLE_DISABLE_SHARED_GEMS
设置为 true
。此设置指示捆绑程序专门忽略任何系统安装的 gem。相反,捆绑程序会将所有必需的 gem 下载到您的 BUNDLE_PATH
.
如果你想使用系统安装的 gem,请从你的包配置中删除 BUNDLE_DISABLE_SHARED_GEMS
设置。
捆绑器版本: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 中的所有宝石都在 /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 而不是说 'Using' 所以需要很长时间。
可能导致此问题的设置是什么以及如何使捆绑程序从系统路径 /var/lib/gems/2.3.0
获取 gems?
我已经完整阅读了 bundle 和 bundle install 文档,但看不出如何让 bundler 使用系统 gems。除了在生成索引后使用 source 'file:///var/lib/gems/2.3.0'
之外,但我真的很想避免这种情况并使用更优雅的解决方案。特别是因为它可能会导致重新安装 gems,这比重新下载花费的时间更多。
您已将 BUNDLE_DISABLE_SHARED_GEMS
设置为 true
。此设置指示捆绑程序专门忽略任何系统安装的 gem。相反,捆绑程序会将所有必需的 gem 下载到您的 BUNDLE_PATH
.
如果你想使用系统安装的 gem,请从你的包配置中删除 BUNDLE_DISABLE_SHARED_GEMS
设置。