在Rails3中,Rake任务通常是在lib/tasks
文件夹中定义的。要查找Rake任务的源代码,可以执行以下步骤:
find / -name "rakefile"
该命令会在您的系统上查找名为“rakefile”的文件,这是Rake任务定义的文件。
rakefile
中,查找类似于以下内容的行:require 'rake/tasklib'
module Rake
class Task
attr_accessor :name, :source, :description, :comments
def initialize(name, source = nil, &block)
@name, @source, @description, @comments = name, source, block && block.description, (source || File.basename($0))
end
def execute
if @comments
@comments.each { |comment| puts comment }
end
if @source
puts "Running task: #{@source}"
Kernel.load(@source)
else
puts "Task definition is empty."
end
end
def self.define(name, &block)
task = new(name, nil, &block)
task.source = File.join(Rake.application.original_dir, task.name)
Rake.application[task.name] = task
end
end
end
@source
变量存储了Rake任务源代码的路径。您可以在该路径下找到Rake任务的源代码。这就是在Rails3中Rake任务的源代码的查找方法。
领取专属 10元无门槛券
手把手带您无忧上云