Ferramenta de análise estática para Java que verifica o código-fonte conforme um padrão de estilo configurável por XML e pode ser executada pela linha de comando, pelo Ant ou pelo Maven.
meta/infer
Ferramenta de análise estática que encontra bugs em código Java, C, C++ e Objective-C sem executá-lo.
- Estrelas
- 15,744
- Forks
- 2,101
- Issues abertas
- 194
- Último commit
- anteontem
O que é?
Infer é um analisador estático que verifica o código-fonte em busca de bugs, como desreferências de ponteiros nulos, vazamentos de memória e vazamentos de recursos, sem executar o programa. Dá suporte a Java, C, C++ e Objective-C e foi escrito em OCaml.
Infer é distribuído como uma versão empacotada e também pode ser compilado a partir do código-fonte. A documentação do projeto aborda os processos de instalação e contribuição. Para habilitar o suporte a Java, pode ser necessário instalar componentes sob a licença GPL.
O projeto é licenciado sob MIT e é mantido como um repositório de código aberto na organização facebook.
Recursos principais
- 01Detecta estaticamente bugs como desreferências de ponteiros nulos e vazamentos de memória ou de recursos.
- 02Dá suporte a bases de código em Java, C, C++ e Objective-C.
- 03Disponível em versões empacotadas ou para compilação a partir do código-fonte.
- 04Escrito em OCaml e licenciado sob MIT.
Casos de uso
- Encontrar vazamentos de memória e de recursos em projetos C ou C++ antes do lançamento.
- Identificar bugs de ponteiro nulo em bases de código Java durante a revisão de código ou na CI.
- Analisar código Objective-C para iOS ou macOS em busca de defeitos.
Início rápido
- 1
Consulte a página Getting Started para ver as versões empacotadas do Infer
- 2
Para compilar a partir do código-fonte, siga as instruções de INSTALL.md
Antes de usar
- Talvez seja necessário baixar e instalar componentes licenciados sob a GPL para habilitar o suporte a Java.
Tópicos
Perguntas frequentes
- O que é infer?
- Ferramenta de análise estática que encontra bugs em código Java, C, C++ e Objective-C sem executá-lo. Infer é um analisador estático que verifica o código-fonte em busca de bugs, como desreferências de ponteiros nulos, vazamentos de memória e vazamentos de recursos, sem executar o programa. Dá suporte a Java, C, C++ e Objective-C e foi escrito em OCaml.
- infer é gratuito? Qual é a licença?
- infer é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- infer ainda é mantido?
- Manutenção ativa. O último commit de infer foi em 5 de nov. de 2026.
- Para que posso usar infer?
- Encontrar vazamentos de memória e de recursos em projetos C ou C++ antes do lançamento. Identificar bugs de ponteiro nulo em bases de código Java durante a revisão de código ou na CI. Analisar código Objective-C para iOS ou macOS em busca de defeitos.
- Como instalar infer?
- Consulte a página Getting Started para ver as versões empacotadas do Infer Para compilar a partir do código-fonte, siga as instruções de INSTALL.md
- Onde consigo infer?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/meta/infer
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Um linter extensível para ECMAScript/JavaScript que identifica padrões problemáticos no código e corrige muitos deles automaticamente.
Ferramenta de análise estática para PHP que encontra bugs no código sem executá-lo.
Analisador estático de código Python que detecta erros, aplica padrões de codificação e aponta problemas no código sem executá-lo.
Um linter rápido e configurável para Go, que substitui o golint e oferece regras e formatadores de saída personalizados.
Ferramenta Python escrita em Rust que visualiza e aplica regras para dependências entre módulos e interfaces públicas em uma base de código.