首页 > 解决方案 > Heroku Push 在加载共享库时失败 Ruby Rails App 错误,文件太短

问题描述

我试图将我的 rails 应用程序的新版本推送到我的 Heroku 帐户,该帐户位于 Heroku-16 堆栈上,但突然它开始失败并出现以下错误:

[master 195f4f9] ...
 1 file changed, 6 insertions(+), 1 deletion(-)
Counting objects: 15, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (15/15), done.
Writing objects: 100% (15/15), 1.66 KiB | 1.66 MiB/s, done.
Total 15 (delta 11), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote: 
remote: -----> Ruby app detected
remote: /app/tmp/buildpacks/f6d48d8a14fccbb19c0c0402fca224929d18e9ee042b3e204bc5992612e990d3b3a0fb1f9627b1a3bae11e9fa20dffc96e136bd734a2f3cf92a0d05bedd42cfe/vendor/ruby/heroku-16/bin/ruby: error while loading shared libraries: /app/tmp/buildpacks/f6d48d8a14fccbb19c0c0402fca224929d18e9ee042b3e204bc5992612e990d3b3a0fb1f9627b1a3bae11e9fa20dffc96e136bd734a2f3cf92a0d05bedd42cfe/vendor/ruby/heroku-16/bin/../lib/libruby.so.2.2: file too short
remote:  !     Push rejected, failed to compile Ruby app.
remote: 
remote:  !     Push failed
remote: Verifying deploy...
remote: 
remote: !   Push rejected to myherokuapp.
remote: 
To https://git.heroku.com/myherokuapp.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/myherokuapp.git'

我尝试进行捆绑更新,但没有解决任何问题。我还尝试撤消最近对代码的更改,但这并没有解决问题。最后,我还检查了 Heroku 的状态,没有他们报告的相关事件。知道为什么会发生这种情况吗?

标签: ruby-on-railsheroku

解决方案


我找到了解决方案。我将我的 gemfile 中的 ruby​​ 版本升级到 2.3.7,这是 Heroku 说它支持的声明版本之一,这似乎解决了这个问题。


推荐阅读