@NonNull在Eclispse中触发警告,尽管使用了常量值

时间:2017-09-12 13:37:47

标签: java eclipse

我有以下方法定义:

public static @Nullable String getFile(@NonNull final Path path, @NonNull final Charset charset)

使用以下语句在其他地方调用该方法:

final String fileString = FileUtil.getFile(filePath, StandardCharsets.UTF_8);

但是,现在我正在使用import org.eclipse.jdt.annotation.NonNull注释Eclipse触发警告:

Eclipse Warning

为什么我会使用常量(即StandardCharsets.UTF8)来触发此警告?

1 个答案:

答案 0 :(得分:0)

StandardCharsets.UTF_8的声明是:

public static final Charset UTF_8 = Charset.forName("UTF-8");

就Eclipse空分析而言,Charset.forName可能会返回null,因此@NotNull无法保证。