Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何基于注释钩住自定义编译器逻辑_Java_Eclipse_Annotations_Compilation - Fatal编程技术网

Java 如何基于注释钩住自定义编译器逻辑

Java 如何基于注释钩住自定义编译器逻辑,java,eclipse,annotations,compilation,Java,Eclipse,Annotations,Compilation,我想定义一些注释,允许在编译过程中报告额外的警告/错误(在概念上类似于IntelliJ中的@Nullable和@NotNull注释) 我希望能够编写一些编译器挂钩,这些挂钩还将根据这些属性添加我的编译逻辑 如果可能的话,我想要一个通用的钩子,但是因为我们使用的是Eclipse——如果我们有这种能力,这也是一个好处 我想知道: 可能吗?(上述任何选项) 我从哪里开始 到目前为止,我对注释几乎没有什么经验,所以如果我走错了方向,我想知道这一点,如果可能的话,找到一个更好的方向 谢谢。您可以使用Jav

我想定义一些注释,允许在编译过程中报告额外的警告/错误(在概念上类似于IntelliJ中的
@Nullable
@NotNull
注释)

我希望能够编写一些编译器挂钩,这些挂钩还将根据这些属性添加我的编译逻辑

如果可能的话,我想要一个通用的钩子,但是因为我们使用的是Eclipse——如果我们有这种能力,这也是一个好处

我想知道:

  • 可能吗?(上述任何选项)
  • 我从哪里开始
  • 到目前为止,我对注释几乎没有什么经验,所以如果我走错了方向,我想知道这一点,如果可能的话,找到一个更好的方向

  • 谢谢。

    您可以使用Java注释处理器(请参阅)。发件人:

    JSR269声明您可以 为编译器实现一个插件 它可以处理注释。这 插件可以在以下位置作为参数提供: 编译时,因此您的代码将 当其中一个注释 出现在源代码中

    上面提到的链接提供了一个示例,可以帮助您开始学习

    另见:

    谢谢-这正是我想要的。第二个链接已不存在。不确定它去了哪里。请参见: