Repolode
meta

meta/infer

一款静态分析工具,无需运行代码即可检测 Java、C、C++ 和 Objective-C 程序中的缺陷。

Star
15,744
Fork
2,101
未关闭 Issue
194
最近提交
前天

这是什么?

Infer 是一款静态分析工具,无需执行程序即可检查源代码中的空指针解引用、内存泄漏、资源泄漏等缺陷。它支持 Java、C、C++ 和 Objective-C,使用 OCaml 编写。

项目提供打包好的发行版,也支持从源码构建。启用 Java 支持时,可能需要额外安装 GPL 许可的组件。

项目采用 MIT 许可证开源。

核心功能

  • 01静态检测空指针解引用、内存泄漏、资源泄漏等缺陷。
  • 02支持 Java、C、C++ 和 Objective-C 代码库。
  • 03提供打包版本,也可从源码构建。
  • 04使用 OCaml 编写,采用 MIT 许可证。

适用场景

  • 在发布前排查 C 或 C++ 项目中的内存和资源泄漏。
  • 在代码评审或 CI 中查找 Java 代码的空指针问题。
  • 扫描 Objective-C 的 iOS 或 macOS 代码缺陷。

快速上手

  1. 1

    阅读入门指南页面,了解预打包版本的安装方法

  2. 2

    若要从源码构建,请参阅 INSTALL.md

使用前须知

  • 启用 Java 支持可能需要下载并安装 GPL 许可的组件。

标签

常见问题

infer 是什么?
一款静态分析工具,无需运行代码即可检测 Java、C、C++ 和 Objective-C 程序中的缺陷。 Infer 是一款静态分析工具,无需执行程序即可检查源代码中的空指针解引用、内存泄漏、资源泄漏等缺陷。它支持 Java、C、C++ 和 Objective-C,使用 OCaml 编写。
infer 可以免费使用吗?用的什么许可证?
infer 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
infer 还在维护吗?
活跃维护中。infer 最近一次提交是在 2026年11月5日。
infer 适合用来做什么?
在发布前排查 C 或 C++ 项目中的内存和资源泄漏。 在代码评审或 CI 中查找 Java 代码的空指针问题。 扫描 Objective-C 的 iOS 或 macOS 代码缺陷。
infer 怎么安装和运行?
阅读入门指南页面,了解预打包版本的安装方法 若要从源码构建,请参阅 INSTALL.md
在哪里获取 infer?
源代码和安装说明在 GitHub 上:https://github.com/meta/infer

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目