2015-01-30 1 views
1

Я запускаю задачу rake, используя всякий раз, когда задание cron, но его давая ошибку Bundler не смог найти совместимые версии для gem "bundler": code sample is ниже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 

когда я запускаю рейка задачи, используя следующие команды

whenever --update-crontab 
crontab -l 

она выполняется успешно, но когда я вижу лог-файл журнал/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) 

Примечание =>, когда я запустил rake twitter: search в терминале успешно работает
Спасибо за прочитав сообщение и большое спасибо за предложение

+1

Try 'расслоение Exec когда --update-crontab' – dddd1919

+0

@ dddd1919 ошибка все еще так же .... спасибо за ответ –

+1

Если есть' Gemfile', запустите 'сверток install 'first – dddd1919

ответ

1

Ошибка говорит вам, что у вас установлена ​​неправильная версия комплекта.

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

Bundler камень версия должна быть меньше, чем 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'

+0

@Danial я установил' $ gem install bundler --version '<2.0, > = 1.3.0'', но все равно получил ту же ошибку, когда я запустил свой cronjob, его только дал мне ошибку внутри cronjobs ... –

+0

@ Ошибка в области Danial только приходите в журналы работы cron –

+1

@HaiderAli, если это так, тогда вам нужно отладить ваш cron ENV, чтобы получить дополнительную информацию. Попробуйте добавить скрипт cron, который запускает 'echo $ (который связывает)> ~/bundler_location' и сравнивает это с выходом' echo $ (который связывает) 'не в cron. Возможно, вы используете другую версию bundler (или, возможно, рейк). Вы должны попробовать это тоже. –

 Смежные вопросы

  • Нет связанных вопросов^_^