Rake で使用するメインのクラスです。
コマンドラインで rake コマンドを実行した時に作成され、実行されます。
add_loader(ext, loader)
[permalink][rdoc]与えられた拡張子で終わるファイル名のファイルをロードするためのローダーを自身に追加します。
require "rake/loaders/makefile"
# Rakefile での記載例とする
task default: :test
task :test
makefile =<<-EOS
<< <<-'SAMPLE_MF'
# Comments
a: a1 a2 a3 a4
EOS
IO.write("sample.mf", makefile)
Rake.application.add_loader("mf", Rake::MakefileLoader.new)
Rake.application.add_import("sample.mf")
Rake::Task.task_defined?("a") # => false
Rake.application.load_imports
Rake::Task.task_defined?("a") # => true
init(app_name = 'rake')
[permalink][rdoc]コマンドラインオプションとアプリケーション名を初期化します。
# Rakefile での記載例とする
task default: :test
task :test
Rake.application.name # => "rake"
Rake.application.init("MyApp") # => ["default"]
Rake.application.name # => "MyApp"
load_rakefile
[permalink][rdoc]Rakefile を探してロードします。
name -> String
[permalink][rdoc]アプリケーションの名前を返します。通常は 'rake' という名前を返します。
# Rakefile での記載例とする
task default: :test_rake_app
task :test_rake_app do
Rake.application.name # => "rake"
end
options -> OpenStruct
[permalink][rdoc]コマンドラインで与えられたアプリケーションのオプションを返します。
# Rakefile での記載例とする
task default: :test_rake_app
task :test_rake_app do
Rake.application.options # => #<OpenStruct always_multitask=false, backtrace=false, build_all=false, dryrun=false, ignore_deprecate=false, ignore_system=false, job_stats=false, load_system=false, nosearch=false, rakelib=["rakelib"], show_all_tasks=false, show_prereqs=false, show_task_pattern=nil, show_tasks=nil, silent=false, suppress_backtrace_pattern=nil, thread_pool_size=8, trace=false, trace_output=#<IO:<STDERR>>, trace_rules=false>
end
original_dir -> String
[permalink][rdoc]rake コマンドを実行したディレクトリを返します。
# Rakefile での記載例とする
task default: :test_rake_app
task :test_rake_app do
Rake.application.original_dir # => "/path/to/dir"
end
rakefile -> String
[permalink][rdoc]実際に使用されている Rakefile の名前を返します。
# Rakefile での記載例とする
task default: :test_rake_app
task :test_rake_app do
Rake.application.rakefile # => "Rakefile"
end
run
[permalink][rdoc]Rake アプリケーションを実行します。
このメソッドは以下の 3 ステップを実行します。
top_level
[permalink][rdoc]Rake アプリケーションに与えられたトップレベルのタスク (コマンドラインで指定されたタスク) を実行します。
# Rakefile での記載例とする
task default: :test1
task :test1
task :test2 do
puts "test2"
end
# rake test2 で実行
Rake.application.top_level
# => "test2"
top_level_tasks -> Array
[permalink][rdoc]コマンドラインで指定されたタスクのリストを返します。
# Rakefile での記載例とする
task default: :test_rake_app
task :test_rake_app do
Rake.application.top_level_tasks # => ["default"]
end
tty_output=(tty_output_state)
[permalink][rdoc]TTY に対する出力状態を上書きします。
大抵の場合、テストのために使用します。
# Rakefile での記載例とする
task default: :test_rake_app
task :test_rake_app do
Rake.application.tty_output? # => false
Rake.application.tty_output = "debug output" # => "debug output"
Rake.application.tty_output? # => "debug output"
end
DEFAULT_RAKEFILES -> Array
[permalink][rdoc]デフォルトで Rakefile として扱うファイル名の配列を返します。
'rakefile', 'Rakefile', 'rakefile.rb', 'Rakefile.rb' が指定されています。