NullAway

Java 代码中的 NPE 检测工具
授权协议 MIT
开发语言 Java
所属分类 开发工具、 代码管理分析/审查/优化
软件类型 开源软件
地区 不详
投 递 者 富建章
操作系统 跨平台
开源组织 Uber
适用人群 未知
 软件概览

NullAway 是 Uber 开源的一款帮助你清除 Java 代码中的 NullPointerException(NPE)的工具,快速且实用。NullAway 类似于 Kotlin 和 Swift 语言中的基于类型的可空性检查,能显着提高开发人员的生产力,同时也满足高要求的安全检查需求。

要使用 NullAway,你必须先在代码(字段,方法参数或返回值为 null)中添加@Nullable注释。给定这些注释,NullAway 执行本地的一系列一致性检查,以确保在代码中取消引用的任何指针不能为空。

NullAway 很快。它被构建为 Error Prone 的一个插件,Error Prone 的运行代码检查作为 Java 编译过程标准的一部分。此编译器的集成允许检查编译器已经完成的工作,如代码解析和类型检查。此外,NullAway 和 Error Prone 可直接集成到我们用于 Android 代码的构建工具 Buck 所支持的快速内存并行构建中。因此,NullAway 可以比在正常构建过程之外运行的工具快得多。

  • 一、工具介绍 NullAway是 Uber 开源的一款帮助你清除 Java 代码中的 NullPointerException(NPE)的工具,快速且实用。NullAway 类似于 Kotlin 和 Swift 语言中的基于类型的可空性检查,能显着提高开发人员的生产力,同时也满足高要求的安全检查需求。 要使用 NullAway,你必须先在代码(字段,方法参数或返回值为 null)中添加@Nulla

 相关资料
  • 问题内容: 我在一个项目中,以前的程序员到处都在复制粘贴代码。这些代码实际上是相同的(或非常相似),可以将它们重构为一个。 我花了无数小时来手动重构这些代码,但我认为必须有更好的方法。有些是非常平凡的静态方法,可以将它们移到祖先类中(但以前的初级程序员都将其复制粘贴到整个类中)。 是否有代码分析工具可以检测到这一点并提供报告/建议?如果可能的话,我更喜欢免费/开源工具。 问题答案: 我使用以下工具

  • 遵循良好的代码规范是很有必要的。随着业务的发展,项目的持续集成,代码的复杂性会变得越来越高。在业务逻辑变得越来越复杂的时候,如果没有统一的规范进行约束,代码的可阅读性会越来越差,这样拓展和维护都将会变得非常棘手。遵守代码规范,能够让多人开发维护的项目代码风格保持统一,提高可阅读性,同时也能够在编码过程中规避掉一些低级错误和需要避开的坑,降低出错概率。 百度前端编码规范 百度提供了一套包括 Java

  • 我在一个Android/iOS应用程序中遇到了一个问题:库代码(libgdx?)抛出一个NPE,但不支持在RoboVM中调试。在Android中运行时,它的工作方式与预期一致,并会出现方法。在IOs中运行时,它将到达failed(Throwable t)方法,其中t是。我创建了一个示例应用程序来展示这个问题,也许是我的错,所以下面是代码:

  • 大部分公司使用sonar吗?

  • 本文向大家介绍Python检测网络延迟的代码,包括了Python检测网络延迟的代码的使用技巧和注意事项,需要的朋友参考一下 本文讲述了Python检测网络延迟的代码。分享给大家供大家参考,具体如下: 以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对呐喊教程的支持。

  • 本文向大家介绍js密码强度实时检测代码,包括了js密码强度实时检测代码的使用技巧和注意事项,需要的朋友参考一下 密码强度的判断, 在注册网站用户的时候, 是一个必须要做的事情, 不同的网站, 实现的方式是不一样的. 密码的判断, 其实也就是一个表单验证的其中一项. 那我们来实现这么一个简单的操作. 首先做一个简单的密码输入框和一个显示密码强度的进度条. 整个整体由vali_pass盒子涵盖. 这个

  • 了解如何在 Adobe Dreamweaver 中使用 linting 检查 HTML、CSS 和 JS 文件。在“输出”面板中查看错误和警告并通过一次单击跳转到出错的代码行。 无论您是新手还是经验丰富的程序员,您的代码中都难免会因为疏忽或缺乏知识而出现错误。当网页或网页的一部分看上去不符合您的预期时,您将不得不调试代码,以查找任何语法或逻辑错误。调试可能是一个极其艰苦和耗时的过程,尤其是实施项目

  • 本文向大家介绍phpnow php探针环境检测代码,包括了phpnow php探针环境检测代码的使用技巧和注意事项,需要的朋友参考一下