Многофайловая сборка граблей

DateTime.Now.ToString("dd/MM/yyyy");
6
задан paszczi 6 November 2009 в 10:38
поделиться

2 ответа

Хорошо, у меня есть решение, которое на основе того, что сказал knoopx. Вот мой главный файл:

task :default do
    FileList["*/**/rakefile*.rb"].each do |project|
        # clear current tasks
        Rake::Task.clear
        #load tasks from this project
        load project
        if !Rake::Task.task_defined?(:default)
            puts "No default task defined in #{project}, aborting!"
            exit -1
        else
            dir = project.pathmap("%d")
            Dir.chdir(dir) do
                default_task = Rake::Task[:default]
                default_task.invoke()
            end
        end
    end
    puts "Done building projects"
end

Каждый rakefile в подкаталоге должен содержать определение задачи по умолчанию.

2
ответ дан 17 December 2019 в 18:17
поделиться

Просто создайте новый Rakefile в корне вашего большого проекта и динамически загрузите свой подпроект Rakefiles

Dir.glob(File.join(File.dirname(__FILE__), '**', 'Rakefile')).each do |tasks|
  load tasks
end
1
ответ дан 17 December 2019 в 18:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: