IntelliJ CheckerFramework插件

时间:2015-08-20 15:16:19

标签: java maven intellij-idea annotations intellij-14

我在Java中使用CheckerFramework的依赖项来实现Spring应用程序

    <dependency>
        <groupId>org.checkerframework</groupId>
        <artifactId>checker-qual</artifactId>
        <version>1.9.4</version>
    </dependency>

在IntelliJ下的Maven项目中。我安装了IntelliJ插件,可用here。但是,当我添加注释时,例如

import org.checkerframework.checker.igj.qual.ReadOnly; import org.checkerframework.checker.nullness.qual.NonNull;

@服务 公共类AService {

@Override
public void addSomething(final int[] @NonNull  @ReadOnly something) {}

我收到消息Annotations are not allowed here,我无法编译。我已经打开了插件的所有注释。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

您编写的语法不是合法的Java。

数组类型的注释在数组括号之前写入,而不是在它们之后。

如果您希望表明something是一个非空的整数数组,那么请不要写int[] @NonNull something。相反,写这样:

int @NonNull [] something