Rails需要RubyGems> = 0.9.4。请安装RubyGems

时间:2009-01-30 07:34:47

标签: ruby-on-rails ruby deployment rubygems cron

遇到与this post相同的问题,但我不认为解决方案是不一样的。

我收到此错误消息:

Rails requires RubyGems >= 0.9.4. Please install RubyGems

当我在Cron中运行脚本/跑步者作业时,但是当我在同一台服务器上的终端中运行它时,它完全正常。

rails服务器运行良好。我只能在cron中运行脚本/运行器。它似乎想要一个终端附加......

4 个答案:

答案 0 :(得分:4)

从您的cron作业和终端尝试which rubywhich gem。你在访问不同的二进制文件吗?您没有提到哪个操作系统和哪个shell,但在无头操作时可能会有不同的$PATH

答案 1 :(得分:1)

选择的答案是完全正确的,但我建议的是不要使用脚本/跑步者。加载整个rails应用程序堆栈所需的资源非常强烈,可以定期运行。

根据我过去的经验,任何cron作业通常只需要处理数据(而不是生成静态文件等)。在这种情况下,您可以非常简单地加载模型,并且由于您已经使用正确的方式(胖模型)编写模型,因此您可以使用一些模型方法轻松地进行数据处理。

当然,以上所有内容完全取决于你的任务,所以请耐心等待:)

我想这是一个可能不存在的问题的答案,并没有在这里被问到,但只是想我会把我的两分钱扔进去;)

答案 2 :(得分:0)

你不会碰巧在OSX上工作吗?你应该安装一个更新的红宝石轨道和宝石关闭macports。谷歌的指示......

答案 3 :(得分:0)

如前面的帖子所示,您的Cron正在使用不同的gem命令源 - 也可以尝试which gemgem -v。您可以在.bash_profile(或类似的shell配置或可能通过其他方式设置适当的Ruby / Rails环境(即机车或其他一体化环境)中设置库。

更新您的宝石设置:

gem update --system

此处提供更多信息 - http://www.rubygems.org/read/book/1