JavaPoet + Android Studio“addModifiers(Modifier)无法应用于Modifier”

时间:2015-09-26 20:11:17

标签: java android intellij-idea javapoet

我为我的Android项目构建了一个注释处理器,使用JavaPoet构建源文件。但是,每次我需要在任何JavaPoet对象上调用addModifiers时,Android Studio都会将其标记为错误。它会说

Cannot resolve method addModifiers(javax.lang.model.element.Modifier)

addModifiers(javax.lang.model.element.Modifier) cannot be applied to javax.lang.model.element.Modifier

取决于我正在调用方法的对象。我已经多次检查过两个完全合格的类名完全匹配。 JavaPoet中的这些方法使用VarArgs参数,但由于我正在编译Java 7,因此不应该有所不同。

现在这里是踢球者:包编译得很好,并创建我的源文件。它只会在IDE中给出错误,而不是在javac运行时。修改器在生成的文件中是正确的。

所以我想我想要回答的是:我如何摆脱IDE错误,我该向谁报告?这是JavaPoet问题,Android Studio问题还是IntelliJ问题,还是我还没有考虑过的问题?

1 个答案:

答案 0 :(得分:0)

这个问题就像这个 How to get a reference to Modifier.PUBLIC that can not be applied in builder in MethodSpec's methodBuilder for JavaPoet

您只需将此代码添加到build.gralde

implementation 'org.checkerframework:checker:2.1.10'

该错误将消失。错误是andorid studio的错误,

此错误与以下相同

您可以在下面引用

第一:https://github.com/square/javapoet/issues/632

添加错误后消失