我编写了一些代码来测试这个函数,学习如何编写注释宏,但是没有调用该方法。
class column extends StaticAnnotation {
def macroTransform(annottees: Any*): Any = macro impl
}
def impl(c: blackbox.Context)(annottees: c.Expr[Any]*): c.Expr[Any] = ???
@column class c {}
我还在impl中添加了断点,但没有暂停;我在impl体中添加了一些日志,但没有记录。
似乎这种方法甚至没有被调用。
为什么呢?我错过了什么吗?
答案 0 :(得分:1)
最典型的原因是缺少对宏天堂编译器插件的引用。如果没有为您的项目启用宏天堂(在sbt或IDE中),则宏注释将不会扩展。