Heroku:我的宝石在哪里?

时间:2014-01-21 16:04:29

标签: ruby ruby-on-rails-3 heroku

我已经将一个Rails 3.2应用程序部署到heroku几周了。我还在我的应用程序所在的Cedar堆栈上执行rake任务。

部署后一天,我发现rake已不再有效。例如,我得到以下内容:

$:~/dev/my_project$ heroku run rake -T
Running `rake -T` attached to terminal... up, run.7566
bundler: command not found: rake
Install missing gem executables with `bundle install`

尝试使用bundle exec运行命令会产生相同的结果。

我尝试了什么:

  1. heroku run bundle install。这有效并告知我宝石已安装到./vendor/bundle中。但是,heroku run ls ./vendor/bundle仅产生以下内容:

    $:~/dev/my_project$ heroku run ls ./vendor/bundle/

    Running ls ./vendor/bundle / attached to terminal... up, run.3458

    bin ruby

  2. bundle package。虽然部署工作但它对我的问题没有帮助。

  3. 摆弄rubygems-bundler宝石(虽然我认为这是核心捆绑器的一部分)。这似乎没有任何影响。

2 个答案:

答案 0 :(得分:1)

在Heroku上,宝石安装在vendor/bundle/ruby/<version>/gems目录中。我刚检查了我的Heroku实例并证实了这一点。

答案 1 :(得分:0)

您将要使用bundle exec rake task,因为宝石不在用户路径中。