2
-----> 检测到 Ruby/Rack 应用程序
-----> 使用 Ruby 版本:ruby-1.9.3
-----> 使用 Bundler 版本 1.3.0.pre.2 安装依赖项
       运行: bundle install --without development:test --path vendor/bundle --binstubs bin/
       从 http://rubygems.org/ 获取 gem 元数据......
       从 http://rubygems.org/.. 获取 gem 元数据
^[[C^[[D^[[D/app/slug-compiler/lib/utils.rb:66:in `block (2 levels) in spawn': command='/app/slug-compiler/lib/ ../../tmp/buildpacks/ruby/bin/compile /tmp/build_22uiq5k0q45sp /app/tmp/repo.git/.cache' exit_status=0 out='' at=timeout elapsed=900.1076555252075 (Utils::TimeoutError)
    来自 /app/slug-compiler/lib/utils.rb:52:in `loop'
    来自 /app/slug-compiler/lib/utils.rb:52:in `block in spawn'
    来自 /app/slug-compiler/lib/utils.rb:47:in `popen'
    来自 /app/slug-compiler/lib/utils.rb:47:in `spawn'
    来自 /app/slug-compiler/lib/buildpack.rb:37:in `block in compile'
    来自 /app/slug-compiler/lib/buildpack.rb:35:in `fork'
    来自 /app/slug-compiler/lib/buildpack.rb:35:in `compile'
    来自 /app/slug-compiler/lib/slug.rb:497:in `block in run_buildpack'
    来自 /app/slug-compiler/lib/utils.rb:121:in `log'
    来自 /app/slug-compiler/lib/slug.rb:748:in `log'
    来自 /app/slug-compiler/lib/slug.rb:496:in `run_buildpack'
    来自 /app/slug-compiler/lib/slug.rb:125:in `block (2 levels) in compile'
    来自 /app/slug-compiler/lib/utils.rb:102:in `block in timeout'
    来自 /usr/local/lib/ruby/1.9.1/timeout.rb:58:in `timeout'
    来自 /app/slug-compiler/lib/utils.rb:102:in `rescue in timeout'
    来自 /app/slug-compiler/lib/utils.rb:97:in `timeout'
    来自 /app/slug-compiler/lib/slug.rb:114:in `block in compile'
    来自 /app/slug-compiler/lib/utils.rb:121:in `log'
    来自 /app/slug-compiler/lib/slug.rb:748:in `log'
    来自 /app/slug-compiler/lib/slug.rb:113:in `compile'
    来自 /app/slug-compiler/bin/slugc:85:in `block in '
    来自 /app/slug-compiler/lib/slug.rb:505:in `block in lock'
    来自 /app/slug-compiler/lib/repo_lock.rb:44:in `call'
    来自 /app/slug-compiler/lib/repo_lock.rb:44:in `run'
    来自 /app/slug-compiler/lib/slug.rb:505:in `lock'
    来自 /app/slug-compiler/bin/slugc:66:in `'
 !Heroku 推送被拒绝,无法编译 Ruby/rack 应用程序

这是我的 Gemfile:

来源:rubygems
红宝石'1.9.3'
宝石'sinatra','1.3.3'
宝石'sinatra-contrib','1.3.2'
宝石'薄','1.5.0'
宝石'haml','3.1.6'
宝石'bcrypt-ruby','3.0.1'
宝石'mongo','1.8.0'
宝石'bson_ext','1.8.0'
宝石'mongoid','3.0.16'
宝石'sinatra-flash','0.3.0'
宝石'braintree','2.22.0'
宝石'faye','0.8.6'
#gem '小马'

当我改变时错误消失了

gem 'braintree', '2.22.0'

gem 'braintree'
4

2 回答 2

5

更新:这个答案不起作用。唯一的选择是提出支持票。

有一个新功能可以解决这个问题:

$ heroku config:set COMPILE_TIMEOUT=n

其中 n 是以秒为单位的数字。我使用了 n=3000(默认为 900)。

(注意:您可能需要启用user-env-compile才能使用此功能)

更新:请阅读有关此答案的评论以获取更新信息!

于 2013-04-29T16:21:13.010 回答
0

对我来说,我找到的解决方案是:

  • 推送我的依赖的前半部分(requirements.txt 文件的一半)
  • 推送所有的 requirements.txt 文件(包括 opencv 依赖项),这个工作是因为 heroku 保留了前半部分的缓存,所以第二次安装会更快
于 2021-04-15T13:08:26.833 回答