【问题标题】:Various questions @NonNull, @NotNull and @ParametersAreNonnullByDefault各种问题@NonNull、@NotNull 和@ParametersAreNonnullByDefault
【发布时间】:2018-06-10 12:29:29
【问题描述】:

我是一名 Android 开发人员,正在使用 AndroidStudio 或 IntelliJ IDEA。

我倾向于信任我的 IDE,但我对接下来的事实感到恼火:

  1. 在android项目中,当IDE在java中自动生成一个扩展Kotlin类的方法时,两个IDE都使用@NotNull而不是@NonNull,是否有这个设置?这个
  2. 我们有@ParametersAreNonnullByDefault,但是当我从第 1 点重写方法并且我没有添加任何注释时,IDE 会警告我,但是为什么?

我的假设错了吗? 有解决办法吗?

【问题讨论】:

  • 您是否查看过这篇关于添加注释的文章:developer.android.com/studio/write/annotations.html ?另请检查“设置 | 编辑器 | 检查 - Java - 可能的错误 - 常量条件和异常”和“设置 | 编辑器 | 检查 - Java - 可能的错误 - @NotNull/@Nullable 问题”中的检查设置
  • 检查我看到它,检查它看起来像预期的那样。但是我的两个案例还是一样

标签: android android-studio intellij-idea kotlin nullable


【解决方案1】:

在“设置/首选项”对话框的“编译器”页面中的“配置注释...”下设置用于 null/not-null 的注释。选择您想要的,然后按复选标记按钮。有关文档,请参阅 https://www.jetbrains.com/help/idea/nullable-notnull-configuration-dialog.html。

我现在无法测试 IDEA/AS 在覆盖已经使用另一个方法时是否使用默认注释,但如果不使用,则需要提交票证。

【讨论】:

  • 该选项在 IDEA 2017.3.2 中存在,但在 AS 3.1 canary 6 中不存在 :(
  • 我在 IDEA 中看到它,但在 AS 中没有。但是,当我尝试生成实现 Kotlin 抽象类方法的方法时,它似乎被忽略了
猜你喜欢
  • 2020-05-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-23
  • 1970-01-01
  • 2016-10-23
  • 2019-02-12
  • 2018-09-03
相关资源
最近更新 更多