我刚从Heroky升级了一个旧应用程序,在轨道上运行ruby。我将ruby 1.9.3升级到2.5.1并将3.2升级到5.2.0。
然后我在Heroku上创建了一个新的应用程序并尝试部署,但我不断收到一条错误消息,说Heroku无法安装1.9.3。
以下是错误日志:
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Ruby app detected
remote: -----> Compiling Ruby/Rails
remote: Command: 'set -o pipefail; curl -L --fail --retry 5 --retry-delay 1 --connect-timeout 3 --max-time 30 https://s3-external-1.amazonaws.com/heroku-buildpack-ruby/heroku-16/ruby-1.9.3-p551.tgz -s -o - | tar zxf - ' failed on attempt 1 of 3.
remote: Command: 'set -o pipefail; curl -L --fail --retry 5 --retry-delay 1 --connect-timeout 3 --max-time 30 https://s3-external-1.amazonaws.com/heroku-buildpack-ruby/heroku-16/ruby-1.9.3-p551.tgz -s -o - | tar zxf - ' failed on attempt 2 of 3.
remote: !
remote: ! An error occurred while installing ruby-1.9.3-p551
remote: !
remote: ! Heroku recommends you use the latest supported Ruby version listed here:
remote: ! https://devcenter.heroku.com/articles/ruby-support#supported-runtimes
remote: !
remote: ! For more information on syntax for declaring a Ruby version see:
remote: ! https://devcenter.heroku.com/articles/ruby-versions
remote: !
remote: !
remote: ! Debug InformationCommand: 'set -o pipefail; curl -L --fail --retry 5 --retry-delay 1 --connect-timeout 3 --max-time 30 https://s3-external-1.amazonaws.com/heroku-buildpack-ruby/heroku-16/ruby-1.9.3-p551.tgz -s -o - | tar zxf - ' failed unexpectedly:
remote: !
remote: ! gzip: stdin: unexpected end of file
remote: ! tar: Child returned status 1
remote: ! tar: Error is not recoverable: exiting now
remote: !
remote: ! Push rejected, failed to compile Ruby app.
remote:
remote: ! Push failed
remote: Verifying deploy...
remote:
remote: ! Push rejected to nbmen-staging.
remote:
To https://git.heroku.com/nbmen-staging.git
! [remote rejected] master -> master (pre-receive hook declined)
在我的Gemfile中,我有:
source 'https://rubygems.org'
ruby '2.5.1'
gem 'rails', '5.2.0'
在Gemfile.lock中,我有: 红宝石版 红宝石2.5.1p57
BUNDLED WITH
1.16.1
还有.rbenv-version文件,我将内容从1.9.3更改为2.5.1。
我仍然得到"安装ruby-1.9.3-p551&#34时发生错误信息。我错过了什么?
答案 0 :(得分:1)
好像你可能有一个旧的/未发布的heroku buildpack,因为你的版本中没有输出bundler版本(因此你可能正在使用一个旧的bulder版本)。
我希望看到的是:
-----> Ruby app detected
-----> Compiling Ruby/Rails
-----> Using Ruby version: ruby-2.5.1
-----> Installing dependencies using bundler 1.15.2
...
检查buildpack:
$ heroku buildpacks
=> heroku/ruby
如果它没有输出heroku/ruby
,那么你正在运行一个旧的/未发布的buildpack
安装最新的buildpack:
heroku buildpacks:set heroku/ruby
有关详细信息:https://devcenter.heroku.com/articles/bundler-version
答案 1 :(得分:0)
Ruby版本文件现在称为.rbenv-version
。
您拥有的文件名为laravel/framework/src/Illuminate/Http/UploadedFile.php
。这是一个旧名称,不再受支持了。
您可以尝试重命名。