gpt4 book ai didi

rake - 加载rake文件并运行其他文件中的任务

转载 作者:行者123 更新时间:2023-12-03 08:50:35 26 4
gpt4 key购买 nike

目前,我正在尝试拆分rake文件以更好地组织它们。为此,我在rake目录中添加了assets文件夹,该文件夹为每组任务保留一个rake文件。

因为我来自PHP,所以我只具备Ruby / Rake的非常基础的知识,并且在加载文件后无法运行我的 namespace 默认操作。
Rake :: Task ...中被赞扬的app:init -string向我的CL抛出了错误:

rake aborted! 
uninitialized constant TASK


这是 namespace /类(如果这是正确的词)。
task :default => [ 'app:init' ]
namespace :app do

rake_dir = "#{Dir.pwd}/assets/rake/"
rake_files = FileList.new( "#{rake_dir}*" )

desc "Loads rake modules (Default action)"
task :init do
puts "\t Importing rake files for processing"

puts "\t loading..."
rake_files.each() { |rake|
puts "\t #{rake}"
require rake
# @link rubular.com
name = rake.split( rake_dir ).last.gsub( /.rb\z/, '' )
puts "\t #{name}"
#Rake :: Task[ "#{name}:default" ].invoke
}
end
end

提前致谢。

编辑:至少,我可以确定文件已加载,因为回显了这些文件开头的纯 puts "file loaded"。问题似乎仅在于未加载已加载rake文件中 namespace 的 :default操作。

最佳答案

您可以将任务放入rakelib/默认加载的rake文件夹中,也可以通过以下方式在Rakefile中添加特定的文件夹:

Rake.add_rakelib 'lib/tasks'

关于rake - 加载rake文件并运行其他文件中的任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13762152/

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