如何在Windows上"随时"创建宝石?

Rad*_*dek 2 ruby rubygems whenever

我想在Windows XP上运行"简单"的cron.所以gem install whenever我随时安装然后运行我的cron.rb

require 'rubygems' 
require 'whenever' 
every 1.days, :at => '5:30am' do 
  command "puts now" 
end 
Run Code Online (Sandbox Code Playgroud)

但它抱怨说

You don't have i18n installed in your application. 
Please add it to your Gemfile  and run bundle install
Run Code Online (Sandbox Code Playgroud)

所以我跑了gem install i18n,现在相同的代码给了我一个错误

C:\whenever>ruby cron.rb 
cron.rb:4: undefined method 'every' for main:Object (NoMethodError)
Run Code Online (Sandbox Code Playgroud)

任何宝石工作时我都知道如何制作?

  • ruby 1.8.7(2010-08-16 patchlevel 302)[i386-mingw32]
  • 宝石1.3.7

本地宝石

aaronh-chronic (0.3.9)
activesupport (3.0.9)
backports (1.18.2)
daemons (1.1.0)
delayed_job (2.0.3)
eventmachine (0.12.10 x86-mswin32-60)
fastercsv (1.5.4)
haml (3.0.21)
i18n (0.6.0)
json (1.5.1)
mechanize (1.0.0)
monkey-lib (0.5.4)
nokogiri (1.5.0 x86-mingw32, 1.4.3.1 x86-mingw32)
rack (1.2.1)
rdiscount (1.6.8)
ruby-growl (3.0)
sinatra (1.2.6, 1.0)
sinatra-advanced-routes (0.5.1)
sinatra-reloader (0.5.0)
sinatra-sugar (0.5.1, 0.5.0)
thin (1.2.7 x86-mswin32)
tilt (1.3)
whenever (0.6.8)
Run Code Online (Sandbox Code Playgroud)

Rob*_*own 5

这个gem是*nix实用程序的包装器cron.我们可以在gem源文件command_line.rb第75行中看到它使用'crontab'hell命令.

它不适用于标准Windows安装,因为此命令不可用.

有一些Windows版本,如cronw,但我不能说这些是否与每当宝石兼容.

或者,您可以将长时间运行的任务作为Windows服务运行. 这篇文章应该可以帮到你.

如果您必须使用/ cron,可能是因为您正在部署*nix,请尝试下载Binami Rubystack VM - 您将在几分钟内启动并运行.