Java 如何正确实现运行时注释的处理器(不适用于源代码)

Java 如何正确实现运行时注释的处理器(不适用于源代码),java,annotations,runtime,Java,Annotations,Runtime,我需要一些帮助来为带有RetentionPolicy.RUNTIME的注释开发处理器(类似于@Deprecated)。我在JavaSE环境中寻找解决方案,而不考虑Spring、JavaEE等 我现在理解以下几点: com.sun.mirror.apt已弃用,不应再使用 AbstractProcessor(子类)、文件META-INF\source\javax.annotation.processing.Processor和注释本身都部署在jar文件中,并放置在主应用程序的类路径(启用注释处理)中

我需要一些帮助来为带有RetentionPolicy.RUNTIME的注释开发处理器(类似于@Deprecated)。我在JavaSE环境中寻找解决方案,而不考虑Spring、JavaEE等

我现在理解以下几点:

  • com.sun.mirror.apt已弃用,不应再使用
  • AbstractProcessor(子类)、文件META-INF\source\javax.annotation.processing.Processor和注释本身都部署在jar文件中,并放置在主应用程序的类路径(启用注释处理)中,对于RetentionPolicy.source来说工作得非常好 然而,我对以下方面的看法是否正确:

  • 上述使用AbstractProcessor的方法不适用于 RetentionPolicy.RUNTIME(或者至少我不能让它工作)
  • 出于运行时的原因,应使用实现InvocationHandler接口的注释处理器()
  • 另外,@的处理器是通过apt或InvocationHandler开发的吗?我在jdk中找不到此注释的处理器