gpt4 book ai didi

ruby - 其他文件中的 Rake 任务

转载 作者:数据小太阳 更新时间:2023-10-29 07:14:01 24 4
gpt4 key购买 nike

我试图在一个项目中使用 rake,如果我把所有东西都放到 Rakefile 中,它会很大并且很难读取/找到东西,所以我试着将每个命名空间放在 lib/rake 中它自己的文件中,我添加了这个到我的 rake 文件的顶部:

Dir['#{File.dirname(__FILE__)}/lib/rake/*.rake'].map { |f| require f }

它加载文件没问题,但没有任务。我现在只有一个 .rake 文件作为测试,名为“servers.rake”,它看起来像这样:

namespace :server do
task :test do
puts "test"
end
end

所以当我运行 rake server:test id 时,我希望看到一行出现“test”,但我得到了

rake aborted!
Don't know how to build task 'server:test'

起初我以为我的代码有误,但如果我将 lib/rake/servers.rake 的内容复制到 Rakefile 中,它就可以正常工作。

如何让另一个文件中的 rake 任务工作?

最佳答案

需要将 rake 文件中的行更改为

Dir.glob('lib/rake/*.rake').each { |r| import r }

关于ruby - 其他文件中的 Rake 任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2891100/

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