Инструмент статического анализа Java-кода, который проверяет соответствие стандарту оформления и настраивается через XML; запускается из командной строки, Ant или Maven.
meta/infer
Статический анализатор, который находит ошибки в коде на Java, C, C++ и Objective-C без его запуска.
- Звёзды
- 15,746
- Форки
- 2,101
- Открытые issues
- 194
- Последний коммит
- позавчера
Что это?
Infer — статический анализатор, который проверяет исходный код на такие ошибки, как разыменование нулевого указателя, утечки памяти и ресурсов, не запуская программу. Он поддерживает Java, C, C++ и Objective-C и написан на OCaml.
Infer распространяется в виде готовых пакетов, а также собирается из исходного кода. В документации проекта описаны установка и порядок участия в разработке. Для поддержки Java может потребоваться установить компоненты под лицензией GPL.
Проект распространяется по лицензии MIT и поддерживается как репозиторий с открытым исходным кодом в организации facebook.
Ключевые возможности
- 01Статически обнаруживает такие ошибки, как разыменование нулевого указателя и утечки памяти или ресурсов.
- 02Поддерживает кодовые базы на Java, C, C++ и Objective-C.
- 03Доступен в виде готовых пакетов или для сборки из исходного кода.
- 04Написан на OCaml и распространяется по лицензии MIT.
Сценарии использования
- Поиск утечек памяти и ресурсов в проектах на C или C++ до выпуска.
- Обнаружение ошибок с нулевыми указателями в кодовых базах на Java при проверке кода или в CI.
- Проверка кода на Objective-C для iOS или macOS на наличие дефектов.
Быстрый старт
- 1
Информацию о пакетных версиях Infer см. на странице Getting Started
- 2
Чтобы собрать проект из исходного кода, следуйте инструкциям в INSTALL.md
Что важно знать
- Для включения поддержки Java может потребоваться скачать и установить компоненты, распространяемые по лицензии GPL.
Темы
Частые вопросы
- Что такое infer?
- Статический анализатор, который находит ошибки в коде на Java, C, C++ и Objective-C без его запуска. Infer — статический анализатор, который проверяет исходный код на такие ошибки, как разыменование нулевого указателя, утечки памяти и ресурсов, не запуская программу. Он поддерживает Java, C, C++ и Objective-C и написан на OCaml.
- infer можно использовать бесплатно? Какая у него лицензия?
- infer распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- infer всё ещё поддерживается?
- Активно поддерживается. Последний коммит в infer — 5 нояб. 2026 г..
- Для чего можно использовать infer?
- Поиск утечек памяти и ресурсов в проектах на C или C++ до выпуска. Обнаружение ошибок с нулевыми указателями в кодовых базах на Java при проверке кода или в CI. Проверка кода на Objective-C для iOS или macOS на наличие дефектов.
- Как установить infer?
- Информацию о пакетных версиях Infer см. на странице Getting Started Чтобы собрать проект из исходного кода, следуйте инструкциям в INSTALL.md
- Где скачать infer?
- Исходный код и инструкции по установке — на GitHub: https://github.com/meta/infer
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Расширяемый линтер для ECMAScript/JavaScript, который находит проблемные конструкции в коде и умеет автоматически исправлять многие из них.
Инструмент статического анализа PHP, который находит ошибки в коде, не запуская его.
Статический анализатор Python: находит ошибки, проверяет соблюдение стандартов кодирования и выявляет проблемы в коде, не запуская его.
Быстрый настраиваемый линтер для Go, заменяющий golint и поддерживающий пользовательские правила и форматы вывода.
Инструмент для Python на Rust, который визуализирует зависимости между модулями и публичные интерфейсы кодовой базы и следит за их соблюдением.