2017-04-15 79 views
5

我正在Windows機器上構建一個rails站點,我在Gemfile.lock的檢查我得到我的特拉維斯以下錯誤構建:我該如何解決「您的軟件包僅支持平臺[」x86-mingw32「],但您的本地平臺是[」ruby「,」x86_64-linux「]」

Your bundle only supports platforms ["x86-mingw32"] but your local platforms are ["ruby", "x86_64-linux"], and there's no compatible match between those two 

名單

以下是完整的日誌:https://travis-ci.org/bikebike/BikeBike/builds/222395810#L654

我看了看我的Gemfile.lock的,並且聲明:

PLATFORMS 
    x86-mingw32 

這似乎是問題的一部分。我試圖把任何Windows特定的寶石在platforms塊:

platforms 'mswin', 'mingw', 'mswin64', 'x64_mingw' do 
    gem 'tzinfo-data' 

    group :test do 
    gem 'wdm', '>= 0.1.0' 
    gem 'win32console', require: false 
    end 
end 

但Gemfile.lock的看起來是一樣的。

這是我的全部GemfileGemfile.lock

我可以通過從git中刪除Gemfile.lock文件暫時解決該問題,但這不是最佳實踐。無論如何,我可以提交我的Gemfile.lock文件並繼續在Windows機器上開發?

回答

8

運行在命令行下面的兩個命令:

bundle lock --add-platform ruby 
bundle lock --add-platform x86_64-linux 

這將增加兩個平臺在Gemfile.lock的

部署到Google雲,當我有同樣的錯誤。但是運行這兩個命令後,添加了ruby和x86_64-linux,問題解決了。