gpt4 book ai didi

rake - 多文件 rake 构建

转载 作者:行者123 更新时间:2023-12-04 15:37:58 29 4
gpt4 key购买 nike

我有一个构建系统,它由几个带有项目的子目录组成,其中每个子目录都有一个单独的 rakiefile(或几个 rakefiles)。没有顶级目录有一个 rakefile,它遍历所有子目录并通过以下方式调用 rake:system("rake"),获取结果包并将它们发送到适当的机器。有没有更优雅的方式来做到这一点?我试过 Rake.application.load() 但这似乎不接受关于必须加载哪个文件的任何参数(正如我提到的,有时每个子目录中有 2 个 rakefiles),

最佳答案

好的,我有基于 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 必须包含默认任务的定义。

关于rake - 多文件 rake 构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1686779/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com