2

我将@NonNull-Checking 与 Eclipse-JDT 一起使用,很高兴看到它理解并尊重 Apache Commons Validate 的使用。这在代码中意味着:

Validate.notNull(someInput);
@NonNull String a = someInput;

如果没有第一行,第二行会在 Eclipse 中产生警告。我只能配置是否应该尊重“断言”。但在没有任何进一步通知的情况下,它也尊重 Validate#notNull 和 Objects#requireNonNull。这很棒,但我想知道:

  1. Eclipse 尊重正确的 Null-Checking 的框架/方法是硬编码的还是可配置的(在某些插件、文件中……)?
  2. 我可以编写自己的方法让 Eclipse 知道,某些变量保证不为空吗?
4

1 回答 1

3

该列表是硬编码的,不能扩展(除了修改源代码)。

涉及的一些主要类包括和接口以及和org.eclipse.jdt.internal.compiler.lookup类。org.eclipse.jdt.internal.compiler.astTypeConstantsTypeIdsReferenceBindingMessageSend

于 2018-08-02T14:13:59.090 回答