Ruby on rails 为“bundle安装”假装其他平台`
我正在Windows下使用bundler进行开发,我想知道如何为我的生产环境创建Ruby on rails 为“bundle安装”假装其他平台`,ruby-on-rails,ruby,gem,bundler,Ruby On Rails,Ruby,Gem,Bundler,我正在Windows下使用bundler进行开发,我想知道如何为我的生产环境创建Gemfile.lock 似乎缺少的是其他平台的精华。在上运行bundle安装 group :production do gem 'mysql2' end 在Windows上创建一个Gemfile.lock mysql2 (0.3.18-x86-mingw32) 当部署到Linux环境时,这显然是不正确的,我需要Gemfile.lock也包含Linux的正确结果。我可以在Linux上运行bundle安装,
Gemfile.lock
似乎缺少的是其他平台的精华。在上运行bundle安装
group :production do
gem 'mysql2'
end
在Windows上创建一个Gemfile.lock
mysql2 (0.3.18-x86-mingw32)
当部署到Linux环境时,这显然是不正确的,我需要Gemfile.lock也包含Linux的正确结果。我可以在Linux上运行bundle安装
,并了解到这一点
mysql2 (0.3.18)
是Linux的正确gem。然后,我手动更新存储库中的Gemfile.lock
,以包含以下内容:
mysql2 (0.3.18)
mysql2 (0.3.18-x86-mingw32)
这在两种平台下都能正常工作,但似乎有点混乱
如何告诉bundle为本地平台以外的其他平台解析
Gemfile.lock
?我想我需要像捆绑安装这样的东西——所有平台。我遗漏了什么?这似乎是一个内置绑定器,解决方法似乎是您需要使用的。问题的可能重复部分有点不同,因为我不想为不同的平台指定不同的gem,而是不同的Gemfile.lock规范。特别是我认为这与Gemfile
应该是什么背道而驰,如果我真的不在乎的话,我必须在Gemfile
中将mysql固定到0.3.18。链接中的讨论有一点关于打包(对于打包,实际上有一个解决方案——所有平台)。决议如何?我可以运行bundler来解决平台的依赖关系而不进行安装吗?通常,部署是在与开发类似的平台上完成的,因此我只需关注我链接到的问题以获得解决方案。