Java自定义注释/装饰器@测试
我想这样做:Java自定义注释/装饰器@测试,java,android,annotations,decorator,compile-time,Java,Android,Annotations,Decorator,Compile Time,我想这样做: public @interface Testing @测试 private void方法,该方法提供SwarmingIfUserTrieteStoUseThis(){ } 其中,@Testing是Java中的自定义注释/装饰器。我希望此@测试注释的行为与@已弃用的注释的行为几乎完全相同-如果我或其他人无意中尝试在代码的其他部分使用此注释,IDE将发出警告(并且方法名称在字体上也有一个删除)。前男友也是如此 我该怎么做 **注意:我不想使用@Deprecated,因为该方法没有被弃
public @interface Testing
@测试
private void方法,该方法提供SwarmingIfUserTrieteStoUseThis(){
}
其中,@Testing
是Java中的自定义注释/装饰器。我希望此@测试
注释的行为与@已弃用的
注释的行为几乎完全相同-如果我或其他人无意中尝试在代码的其他部分使用此注释,IDE将发出警告(并且方法名称在字体上也有一个删除)。前男友也是如此
我该怎么做
**注意:我不想使用@Deprecated
,因为该方法没有被弃用,我只想将其用于测试目的
**这个标记也应该在编译时检查,而不是在运行时检查。问题是,注释作为其名称,仅用于注释:) 创建这样的注释非常简单,您需要执行以下操作:
public @interface Testing
为了让IDE在编译时使用它,您必须编写一个插件
以下是我在另一个SO问题中发现的关于插件开发的问题。听起来你在描述类似的东西,这是(以前称为“谷歌收藏”)的一部分。如果你真的创建了一个自己的,你可能会想要它
我不知道有任何钩子或特性会导致非
@弃用的
成员触发警告或IDE标志,就好像它们是@弃用的
。因为镜像API和反射API不跟踪单独的表达式和语句(如文档化的),如果没有完整的java解析器,您可能不会有太多的运气来检测它。 < P>您可以考虑编写A来解决这个问题。当检测到@Testing
注释时,IDE将显示Lint警告(例如,在Eclipse+ADT的情况下,黄色下划线)
Android工具文档中提供了一个详细的指南,用于扫描Java源文件以查找Lint的特定问题