簡體   English   中英

Heroku 和捆綁器版本

[英]Heroku and bundler version

我像往常一樣在 Heroku 上推送代碼。

但是出現此消息:

警告:正在運行的 Bundler (1.15.2) 版本比創建鎖定文件的版本 (1.16.1) 舊。 我們建議您通過運行gem install bundler升級到最新版本的 Bundler。

所以我運行:

heroku run gem install bundler

在 ⬢ myapp 上運行 gem install bundler... up, run.3401 (Standard-1X)

獲取:bundler-1.16.1.gem (100%)

成功安裝 bundler-1.16.1

bundler-1.16.1 的解析文檔

為 bundler-1.16.1 安裝 ri 文檔

11 秒后完成 bundler 的文檔安裝

安裝了 1 個寶石

但是當我重試推送代碼時:

heroku run bundle install

在 ⬢ myapp 上運行 bundle install ... up, run.9532 (Standard-1X)

警告:正在運行的 Bundler (1.15.2) 版本比創建鎖定文件的版本 (1.16.1) 舊。 我們建議您通過運行gem install bundler升級到最新版本的 Bundler。

在 gem Gemfile.lock 我得到:

與 1.16.1 捆綁

我不明白為什么這個捆綁發行版不想安裝在 Heroku 上。

Bundler 1.15.2是預裝在 Heroku dynos 上的版本。 在您的機器1.16.1 Bundler 更改為1.16.1不會更改 Heroku 上安裝的版本。

此外,您無法通過運行bundle install來更新 Heroku 上的 Bundler。 即使這是可能的,它也會在 Bundler 的下一次運行中生效——通常,你只在 Heroku dyno 上捆綁一次。

我的建議是:這只是一個警告,忽略它,讓我們希望 Heroku 在未來更多地更新 Bundler。

您還需要確保為此使用標准的 Heroku 構建包。

當我嘗試將我的應用程序從 Cedar 升級到 Heroku-20 時,它一直失敗並出現相同的捆綁程序錯誤。 但是,最終,我記得我安裝了一個自定義的 buildback,結果證明這是不正確的 bundler 版本的來源。

一旦我切換回默認的 Heroku Ruby buildpack,我終於能夠毫無問題地進行部署。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM