我有许多包含公共模块的rake文件:
require 'rake'
module RakeCommon
include Rake::DSL
task :clean do
在rake文件中:
include RakeCommon
问题是在更新到rake 10.0.1之后,我收到以下错误:
undefined method `task' for RakeCommon:Module
答案 0 :(得分:1)
就像我在评论中所述,但只是检查了它。
您应该在模块中使用extend
代替include
。您的代码之前工作正常,因为Rake::DSL
模块正在扩展Object
。您使用的方法在模块中可用,无论您是否正确包含或扩展它。在10.0分支中删除了一些已弃用的东西,这就是为什么它不起作用。