Java 自定义注释

Java 自定义注释,java,annotations,Java,Annotations,如果我创建如下自定义注释: public @interface TODO { String msg(); String start_date(); } 然后是一种方法: @TODO ( msg="will be developed!", start_date="05/01/2010" ) public static void Calculator() { } 在我叫它之后: Calculator(); 如果我想让编译器警告我该怎么做?如果您使用的是IDE

如果我创建如下自定义注释:

public @interface TODO
{
    String msg();    
    String start_date();
}
然后是一种方法:

@TODO
(
   msg="will be developed!",
   start_date="05/01/2010"
)
public static void Calculator()
{
}
在我叫它之后:

Calculator();

如果我想让编译器警告我该怎么做?

如果您使用的是IDE,那么有很多好的选择。对于Eclipse:

  • 使用内置插件定位代码中的所有
    TODO
    FIXME
    等单词,并将它们放在特殊视图中
  • 注册您自己的自定义生成器,它可以显示警告

如果您使用的是IDE,有很多好的选择。对于Eclipse:

  • 使用内置插件定位代码中的所有
    TODO
    FIXME
    等单词,并将它们放在特殊视图中
  • 注册您自己的自定义生成器,它可以显示警告

您必须编写并调用
apt
才能在代码上运行它。

您必须编写并调用
apt
才能在代码上运行它。

使用创建您自己的注释处理器并使用打印消息

使用创建您自己的注释处理器并使用打印消息有类似的问题,几周前。对这个问题和我的答案都很满意


您可以轻松地根据自己的需要修改此代码。

几周前,也有类似的问题。对这个问题和我的答案都很满意


您可以轻松地根据自己的需要修改此代码。

问题的结尾不太容易理解…:-(我希望当我编译时,我能像我放上@Deprecated或@Override注释一样向编译器发出警告……你问题的结尾不是很容易理解……:-(我希望当我编译的时候,我能像我放注释一样向编译器发出警告,例如,@Deprecated或@Override annotation…用Java编译器做不到吗?用Java编译器做不到吗?