Conjunto de geradores de código para processamento de anotações em Java, incluindo AutoValue, AutoFactory, AutoService e Common.
google/guice
Guice é um framework leve de injeção de dependências para Java 11+ que dispensa o uso de fábricas e a criação direta de objetos.
- Estrelas
- 12,729
- Forks
- 1,675
- Issues abertas
- 372
- Último commit
- há 8 dias
O que é?
Guice é um framework de injeção de dependências para Java desenvolvido pelo Google. A ideia central é que as classes declarem suas dependências com @Inject, e o Guice forneça esses objetos, para que o código da aplicação não precise chamar new nem depender de classes de fábrica. Isso facilita alterar, testar unitariamente e reutilizar o código em diferentes contextos.
Guice aproveita os recursos de segurança de tipos do Java e busca manter o comportamento previsível, evitando mágica oculta. O framework mantém um núcleo enxuto e oferece pontos de extensão, em vez de incluir todos os recursos possíveis. Quando ocorrem erros de configuração, ele exibe mensagens descritivas que ajudam a diagnosticá-los.
O projeto é publicado no Maven Central como o artefato principal com.google.inject:guice, com módulos de extensão opcionais para áreas como assisted injection, JMX, JNDI, persistência, Spring e interoperabilidade com Dagger. As versões 6.0.0 e 7.0.0 são funcionalmente equivalentes e diferem principalmente pelo uso dos namespaces javax ou jakarta.
Recursos principais
- 01Injeta dependências declaradas com @Inject, reduzindo a criação manual de objetos e o código de fábricas.
- 02Bindings com segurança de tipos, verificados pelo sistema de tipos do Java.
- 03Módulos de extensão opcionais para assisted injection, persistência, JMX, JNDI, Spring e Dagger.
- 04Mensagens de erro úteis quando a configuração da injeção está incorreta.
- 05Disponível no Maven Central, com versões para os namespaces javax e jakarta.
Casos de uso
- Estruturar uma aplicação Java para que os componentes recebam suas dependências, em vez de criá-las.
- Facilitar os testes unitários das classes, substituindo implementações por mocks ou alternativas.
- Integrar injeção de dependências a um projeto Java web ou corporativo que use APIs javax ou jakarta.
Início rápido
- 1
Adicione a dependência Maven do Guice Core (com.google.inject:guice) ao seu projeto
- 2
Consulte a versão mais recente no Maven Central e defina-a na dependência
Antes de usar
- Requer Java 11 ou superior.
- A versão 6.0.0 é voltada para os pacotes javax, enquanto a 7.0.0 é voltada para os pacotes jakarta. Escolha a versão que corresponde à sua stack.
Em coleções
Tópicos
Perguntas frequentes
- O que é guice?
- Guice é um framework leve de injeção de dependências para Java 11+ que dispensa o uso de fábricas e a criação direta de objetos. Guice é um framework de injeção de dependências para Java desenvolvido pelo Google. A ideia central é que as classes declarem suas dependências com @Inject, e o Guice forneça esses objetos, para que o código da aplicação não precise chamar new nem depender de classes de fábrica. Isso facilita alterar, testar unitariamente e reutilizar o código em diferentes contextos.
- guice é gratuito? Qual é a licença?
- guice é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- guice ainda é mantido?
- Manutenção ativa. O último commit de guice foi em 30 de out. de 2026.
- Para que posso usar guice?
- Estruturar uma aplicação Java para que os componentes recebam suas dependências, em vez de criá-las. Facilitar os testes unitários das classes, substituindo implementações por mocks ou alternativas. Integrar injeção de dependências a um projeto Java web ou corporativo que use APIs javax ou jakarta.
- Como instalar guice?
- Adicione a dependência Maven do Guice Core (com.google.inject:guice) ao seu projeto Consulte a versão mais recente no Maven Central e defina-a na dependência
- Onde consigo guice?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/google/guice
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Framework modular para aplicações Java com injeção de dependências, auto-configuração, Web MVC, servidor HTTP baseado em Netty e acesso a dados, inspirado no Spring.
Um framework progressivo para Node.js, voltado à criação de aplicações server-side eficientes e escaláveis em TypeScript ou JavaScript.
Um framework PHP para aplicações web, com sintaxe expressiva e recursos de roteamento, injeção de dependências, migrations, filas e broadcasting.
Framework Java fundamental para criar aplicações corporativas, com injeção de dependências, MVC e suporte de infraestrutura para todo o ecossistema Spring.
Crie imagens de container Docker e OCI otimizadas para aplicações Java com Maven ou Gradle, sem precisar de um daemon do Docker.