在 JRuby 和 MRI 之间共享 Gemfile.lock

Sharing Gemfile.lock between JRuby and MRI

我正在开发 gem 无需交叉编译即可与 JRuby 和 MRI 兼容。我在 JRuby changes Gemfile.lock.

上发现 运行ning bundle install

当我在 MRI 上 运行 bundle install 时,Gemfile.lock 不会变回来。但一切都按预期进行。 MRI 捆绑器未尝试安装 JRuby 添加的新依赖项。

即使我没有提及,bundler 怎么知道它不应该安装这些?

为 JRuby 和 MRI 使用一个 Gemfile.lock 是否安全?

没关系,你想要什么。在 MRI 下重新 运行ning bundle 就可以了。因此,只需将其提交到 git 中,并在其更改时重新 运行 捆绑在两个 Rubies 下。

支持具有 gem 相对于平台的依赖性(因为某些 gem 可能是本机的)已经在 Bundler 1.16 周围实现,因此请确保您使用的不是旧版本。