com*_*ile 1 ruby rubygems ruby-on-rails gemfile.lock
我试图在Gemfile.lock没有明确这样做的情况下追踪几个平台是如何添加到我的。在添加新 gem 时,我一定忽略了这些更改,但是Gemfile.lock在添加相同的Gemfile更改时,我无法重现相同的平台添加内容。
这是添加新平台的提交。
#....
+gem 'sqreen'
+gem 'sanitize'
+
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.5'
@@ -55,6 +57,8 @@ gem 'postmark-rails'
group :development, :test do
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
gem 'byebug', platform: :mri
+ gem 'capybara'
+ gem 'selenium-webdriver'
end
Run Code Online (Sandbox Code Playgroud)
以及Gemfile.lock在同一次提交中的更改:
PLATFORMS
+ java
ruby
+ x64-mingw32
+ x86-mingw32
+ x86-mswin32
Run Code Online (Sandbox Code Playgroud)
我尝试在测试应用程序中重现相同的修改,但这些平台未添加到 Gemfile.lock
我在最近推送到 heroku 时注意到了这一点:
Removing `Gemfile.lock` because it was generated on Windows.
remote: Bundler will do a full resolve so native gems are handled properly.
remote: This may result in unexpected gem versions being used in your app.
remote: In rare occasions Bundler may not be able to resolve your dependencies at all.
remote: https://devcenter.heroku.com/articles/bundler-windows-gemfile
Run Code Online (Sandbox Code Playgroud)
我不是在 Windows 机器上开发,现在正在添加平台特定的 gems Gemfile.lock,例如:
ffi (1.9.18)
ffi (1.9.18-java)
ffi (1.9.18-x64-mingw32)
ffi (1.9.18-x86-mingw32)
Run Code Online (Sandbox Code Playgroud)
我不完全确定平台是如何添加的。不建议直接修改锁定文件,但为了安抚 heroku 警告,我是否应该探索删除所有特定于平台的引用并删除锁定文件中的非 ruby 平台?欢迎在这里提供任何建议。
rails 5.1.3
在早上用新鲜的眼光深入研究之后,这就是发生的事情。
我检查了我的 bash 历史记录,发现我在bundle lock --add-platform x86-mingw32 x86-mswin32 x64-mingw32 java我在问题中发布的提交之前运行了。这显然会在您Gemfile.lock和随后的平台特定依赖项中添加更多平台。
我相信我在终端中运行它是为了摆脱我认为周围的错误tzinfo-data。有关该“错误”的更多信息,请访问https://github.com/tzinfo/tzinfo-data/issues/12。
Gemfile.lock我没有直接编辑,而是运行bundle lock --remove-platform x86-mingw32 x86-mswin32 x64-mingw32 java,这对我的锁定文件进行了适当的编辑。更多信息在这里http://bundler.io/v1.16/bundle_lock.html。
Heroku 在按预期部署时不再抛出错误。希望这对未来的人有所帮助。
| 归档时间: |
|
| 查看次数: |
3055 次 |
| 最近记录: |