Задание Ruby cron выдает ошибку «Нет такого файла для загрузки - не рекомендуется» - PullRequest
1 голос
/ 17 февраля 2012

Я запланировал этот cronjob:

ruby twitter_bots/tweet_bots.rb

tweet_bots.rb:

#!/usr/bin/ruby

require 'rubygems'
require '/home/david/twitter_bots/twitterbot.rb'

mcnulty = TwitterBot.new('jamesmcnulty')
mcnulty.tweet
mcnulty.reply
mcnulty.close

twitterbot.rb:

require 'dbi'
require 'twitter'

class TwitterBot
    ...

Крон имеет следующие переменные среды:

SHELL=/bin/sh
PATH=/home/david/.rvm/gems/ruby-1.9.2-p290/bin:/home/david/.rvm/gems/ruby-1.9.2-p290@global/bin:/home/david/.rvm/rubies/ruby-1.9.2-p290/bin:/home/david/.rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
HOME=/home/david
LOGNAME=david

Но выдает эту ошибку:

/home/david/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require': no such file to load -- deprecated (LoadError)
    from /home/david/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from /home/david/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/dbi.rb:48:in `<top (required)>'
    from /home/david/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from /home/david/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from /home/david/twitter_bots/twitterbot.rb:1:in `<top (required)>'
    from /home/david/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from /home/david/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from twitter_bots/tweet_bots.rb:5:in `<main>'

Я вижу, что ошибка исходит от /home/david/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/dbi.rb:48, где она имеет require "deprecated"

Но у меня установлена ​​устаревшая версия gem v 2.0.1. Я тоже пробовал с версией 3.0.0.

Когда я запускаю его вручную, он работает. Что не так с cron?

1 Ответ

1 голос
/ 17 февраля 2012

Полагаю, вам нужен deprecated самоцвет.

попытка:

[sudo] gem install deprecated
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...