Java 批注处理顺序-找不到符号
我所拥有的:Java 批注处理顺序-找不到符号,java,android,annotation-processing,annotation-processor,Java,Android,Annotation Processing,Annotation Processor,我所拥有的: 我已经编写了一个注释处理器@ViewModel,它生成类ViewModel_ 但我有两个注释处理器 我的问题: 如果我用我的@restainable注释注释类型为ViewModel\uuu的字段 ... @Retainable ViewModel_<annotated class name> viewModelGenerated; ... 。。。 @可保留 ViewModel\uViewModelGenerated; ... 编译器抱怨: 错误:(33,15)错误:
@ViewModel
,它生成类ViewModel_
但我有两个注释处理器
我的问题:
如果我用我的@restainable
注释注释类型为ViewModel\uuu
的字段
...
@Retainable
ViewModel_<annotated class name> viewModelGenerated;
...
。。。
@可保留
ViewModel\uViewModelGenerated;
...
编译器抱怨:
错误:(33,15)错误:找不到符号类ViewModel_
但是,
如果我用daggers@Inject
而不是我的@Retainable
注释这个字段,那么一切都在编译
问题:
我的注释和匕首有什么区别?
我能做些什么使其工作?很难诊断您的问题,因为您没有问题的自包含示例,也没有发布任何相关代码,错误描述几乎毫无用处。但请注意,作为编写注释处理器的指南,这篇链接文章令人憎恶。在尝试执行您尝试执行的操作之前(在代码中使用尚未存在的类型并运行多个相互依赖的注释处理器),您应该了解多轮编译的机制和ErrorType
的目的。感谢您的回答。我将尝试用提供相同错误的最小样本更新我的问题。您会推荐什么作为编写注释处理器的好指南?