【发布时间】:2021-05-17 15:18:47
【问题描述】:
我对我的应用程序将使用哪个 gem 感到困惑?那些存储在特定 gemset 中的 gem 或者存储在 vendor/bundle 下的那些 gem?
让我们讨论一下这个场景。首先,在所有 gem 安装在 vendor/bundle 文件夹中之后,我做了“bundle install - -path vendor/bundle”。现在更改了我的 gemfile 并删除了 .bundle 文件夹。创建新的 Gemset 调用 mypro 并使用此 gemset。现在我运行“捆绑安装”并在此 Gemset 下安装所有 gem。现在我的问题是当我从哪个位置运行我的应用程序时使用 gem?来自供应商/捆绑包或来自 gemset
【问题讨论】:
-
在您的
Gemfile.lock中指定的那些。如果你不使用 bundler,你应该这样做。 -
好的,我们来讨论一下这个场景。首先,在所有 gem 安装在 vendor/bundle 文件夹中之后,我做了“bundle install - -path vendor/bundle”。现在更改了我的 gemfile 并删除了 .bundle 文件夹。创建新的 Gemset 调用 mypro 并使用此 gemset。现在我运行“捆绑安装”并在此 Gemset 下安装所有 gem。现在我的问题是当我从哪个位置运行我的应用程序时使用 gem?来自供应商/捆绑包或 gemset。
-
"从哪个位置使用 gem" - 1) 为什么将 gemsets 与 bundler 一起使用? 2)没关系。将加载 Gemfile.lock 中指定的确切版本,并且每个位置的代码都是相同的,除非您正在编辑已安装 gem 的代码。
-
要准确回答您的问题,我不知道。永远不需要找出答案。