Bundler找不到gem" bundler"的兼容版本。使用when和rake任务

时间:2015-01-30 23:21:27

标签: ruby-on-rails bundler rake-task whenever

我正在运行rake任务,无论何时使用cron作业但是它的给出错误 Bundler找不到gem“bundler”的兼容版本:代码示例在

下面

schedule.rb

set :output, {:error => "log/cron_error_log.log", :standard => "log/cron_log.log"}

every 1.minute do
  rake "twitter:search"
end

/lib/tasks/twitter.rake

namespace :twitter do
  desc "Search tweets for user"
  task :search => :environment do

    puts "searching for all users ......."
    # my original code 

  end
end

当我使用以下命令运行我的rake任务时

whenever --update-crontab
crontab -l

它运行成功,但是当我看到日志文件 log / cron_log.log 时,我每1分钟后出现以下错误

Bundler could not find compatible versions for gem "bundler":
  In Gemfile:
    rails (= 4.1.1) depends on
      bundler (< 2.0, >= 1.3.0)

  Current Bundler version:
    bundler (1.0.15)

注意=&gt; 当我在终端中运行 rake twitter:search 时,它已成功运行
感谢您阅读帖子并非常感谢您的建议

1 个答案:

答案 0 :(得分:1)

错误告诉您安装了错误的bundler版本。

rails (= 4.1.1) depends on bundler (< 2.0, >= 1.3.0)

Bundler gem版本必须小于2.0但大于或等于1.3.0

Current Bundler version: bundler (1.0.15)

已安装的bundler版本为1.0.15(小于2.0,但不大于或等于1.3.0

TL; DR 安装正确版本的bundler

$ gem install bundler --version '<2.0, >= 1.3.0'