2013-12-23 46 views
0

我的Ruby应用程序运行在我的nitrous.io盒很好,但是当我把它推到Heroku的并试图运行计划的过程中,日志显示此错误:Heroku加载要求错误?

2013-12-23T22:37:11.902160+00:00 heroku[scheduler.4283]: State changed from starting to up                             
2013-12-23T22:37:12.178751+00:00 app[scheduler.4283]: from /app/vendor/ruby-2.0.0/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:53:in `require'              
2013-12-23T22:37:12.178751+00:00 app[scheduler.4283]: from /app/bin/rbtc:3:in `<main>'                              
2013-12-23T22:37:12.178751+00:00 app[scheduler.4283]: /app/vendor/ruby-2.0.0/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:53:in `require': cannot load such file -- rbtc_arbitrage (LoadError)                                                   
2013-12-23T22:37:13.432972+00:00 heroku[scheduler.4283]: Process exited with status 1                              
2013-12-23T22:37:13.461438+00:00 heroku[scheduler.4283]: State changed from up to complete  

这是在/应用程序的代码/斌/ RBTC:3

#!/usr/bin/env ruby 

require 'rbtc_arbitrage' 
RbtcArbitrage::CLI.start ARGV 

File structure link

我试图将此更改为require_relative如在回答有人在堆栈溢出否则无济于事。

我有点不知所措。任何帮助表示赞赏!

+0

请将您的文件夹结构和代码放在'/ app/bin/rbtc:3'附近# –

回答

1

请确保该文件存在:lib/rbtc_arbitrage.rb它加载在你的回购这样的其他文件(语法是有效的,如果你使用的是捆绑):

require 'rbtc_arbitrage/version' 
require 'rbtc_arbitrage/file1' 
# .. and so on 

现在,将这个文件应该单独工作,但如果这行不通,尝试加入您的lib目录负载路径在bin/rbtc文件之前任何require statments,像这样:

$LOAD_PATH.unshift File.join(File.dirname(__FILE__), '..', 'lib') 

这明确地告诉红宝石添加lib目录到加载路径,并且应该解决你的问题。

+0

This worked!非常感谢!! –