3
namespace :jobs do
  task :environment => [:environment] do
    #Something cool
  end
end

これにより、に循環依存が発生します。:environmentこれは、Railsタスクに依存しようとしていますenvironment

これを正しく設定するにはどうすればよいですか?

4

2 に答える 2

10

また、次のように言うことができるはずです。

task :environment => [ 'rake:environment' ] do ... end

'rake:'名前空間は最上位の名前空間です。これは、rubyで::CONSTANT_NAMEを実行するようなものです。

于 2012-03-03T21:12:13.597 に答える
5

名前空間内のタスクが親名前空間内の同じ名前のタスクを呼び出そうとしているという、まったく同じ問題が発生しました。これは確かに可能です。

namespace :jobs do
  task :environment => [ '^environment' ] do
    #Something cool
  end
end

使用する各カレットは、名前空間階層の1レベル上の名前解決を開始します。参照: http: //rake.rubyforge.org/files/doc/rakefile_rdoc.html

于 2012-03-03T11:38:21.880 に答える