0

我有许多包含通用模块的 rake 文件:

require 'rake'

module RakeCommon
  include Rake::DSL
  task :clean do

在 rake 文件中:

include RakeCommon

问题是更新到 rake 10.0.1 后,出现以下错误:

undefined method `task' for RakeCommon:Module
4

1 回答 1

2

就像我在评论中所说的那样,但只是检查了一下。

你应该在你的模块中使用extend而不是。include您的代码更早工作,因为Rake::DSL模块正在扩展Object. 无论您是否正确包含或扩展它,您使用的方法都可以在模块中使用。在 10.0 分支中删除了一些不推荐使用的东西,这就是它不起作用的原因。

于 2012-11-21T10:55:55.073 回答