【发布时间】:2019-02-04 02:24:36
【问题描述】:
目前我正在使用 Java 进行注释,并且一切正常。我的AbstractProcessor 创建新文件,并在需要时发出错误和警告。不工作的是实时错误和警告。那我的意思是什么?
假设我用@Override 注释了一个非父方法。 IDE 会给我一个实时错误,我无法覆盖此方法,因为它不是父类的一部分。不推荐使用的方法也是如此。每当您尝试调用其中一种方法时,都会收到有关它的警告。请注意,这些错误和警告会立即发出,我无需重新构建项目即可获得有关它们的通知。
实际上,我的警告和错误仅在我重建项目时才会发出,那么如何实现实时错误和警告?不确定这是否重要,但我使用 Intellij 作为 IDE。
【问题讨论】:
-
我认为您的 IDE 会即时编译文件并从编译器消息中获取警告
-
是的,这是有道理的。但是为什么我的
Processor没有即时调用呢?我可以在某处看到@Override处理器的来源吗? -
我假设您已经编写了编译时注释处理器并且您的 IDE 是 eclipse?你可能可以,但我猜这需要很多时间才能找到,它是
javac的一部分,不知何故 -
是的,我的注释有
RetentionPolicy.SOURCE,我的 IDE 是 Intellij。 -
我猜在这种情况下,intellij 设置中没有钩子或动作来处理此注释,假设下划线不正确的用法。我不知道在 intellij 中是如何做到的,但显然这是可能的;因为有工具可以做到这一点......
标签: java annotations java-annotations