【发布时间】:2017-01-27 15:39:09
【问题描述】:
我注意到 Android Studio 将验证 @Nullable 没有在代码中被忽略:
例如
@Nullable MyObject getMyObject();
...
MyObject o = getMyObject();
o.method();
^
Method invocation 'method' may produce 'java.lang.NullPointerException'
这是由NullableProblems IntelliJ 警告强制执行的。
我想在构建时通过 lint 规则从 gradle 强制执行此规则。有谁碰巧知道是否可以通过 gradle 启用类似的功能?
【问题讨论】:
-
也就是说,如果项目中有这样的警告,你想让gradle拒绝构建?或者您只想让 gradle 将其记录在日志输出中?
-
第一步是让 gradle 承认这种情况。我的命令行版本不会对此发出警告。但是,是的,如果您不检查可空值,我最终会拒绝构建。
-
所以如果遇到 lint 错误,您有点想中止编译?
-
我希望发生以下情况:1) 开发人员将 @Nullable 添加到代码中的方法 2) 另一个开发人员使用该方法而不检查 null 3) lint 检查捕获错误(就像它已经在 Android Studio 检查中所做的那样)4)构建失败
-
你好丹尼尔。您会考虑
findbugs或PMD解决方案吗?如果是这样,也许您可以编辑您的问题以注意这一点,然后包含这些标签?我不确定这是否可能,但它可能比我在答案中给出的更接近您正在寻找的内容。
标签: android android-studio gradle android-gradle-plugin lint