Repolode
google

google/guice

Guice는 팩토리나 직접적인 객체 생성 없이 의존성을 주입할 수 있는 Java 11 이상용 경량 DI 프레임워크입니다.

스타
12,730
포크
1,675
열린 이슈
372
마지막 커밋
7일 전

어떤 프로젝트인가요?

Guice는 Google에서 개발한 Java용 의존성 주입 프레임워크입니다. 핵심 아이디어는 클래스가 @Inject로 의존성을 선언하면 Guice가 해당 객체를 제공하므로, 애플리케이션 코드에서 new를 호출하거나 팩토리 클래스에 의존할 필요가 없다는 것입니다. 이를 통해 코드를 더 쉽게 변경하고 단위 테스트하며 다양한 맥락에서 재사용할 수 있습니다.

Guice는 Java의 타입 안전성 기능을 활용하고 동작을 예측 가능하게 유지하기 위해 숨겨진 마법 같은 동작을 피합니다. 작은 핵심 기능에 집중하고, 프레임워크에 모든 기능을 추가하는 대신 확장 지점을 제공합니다. 설정 오류가 발생하면 원인을 파악하는 데 도움이 되는 구체적인 메시지를 출력합니다.

프로젝트는 핵심 아티팩트인 com.google.inject:guice로 Maven Central에 배포되며, assisted injection, JMX, JNDI, persistence, Spring, Dagger 상호 운용성 등을 위한 선택적 확장 모듈도 제공합니다. 버전 6.0.0과 7.0.0은 기능적으로 동일하며, 주된 차이는 javax 네임스페이스를 대상으로 하는지 jakarta 네임스페이스를 대상으로 하는지입니다.

핵심 기능

  • 01@Inject로 선언한 의존성을 주입해 수동 객체 생성과 팩토리 코드를 줄입니다.
  • 02Java 타입 시스템으로 검사되는 타입 안전한 바인딩을 제공합니다.
  • 03assisted injection, persistence, JMX, JNDI, Spring, Dagger를 위한 선택적 확장 모듈을 제공합니다.
  • 04의존성 주입 설정이 잘못된 경우 문제 해결에 도움이 되는 오류 메시지를 제공합니다.
  • 05javax 및 jakarta 네임스페이스용 버전을 Maven Central에서 이용할 수 있습니다.

활용 사례

  • 컴포넌트가 직접 의존성을 생성하는 대신 주입받도록 Java 애플리케이션을 구성합니다.
  • mock이나 대체 구현을 적용해 클래스를 더 쉽게 단위 테스트합니다.
  • javax 또는 jakarta API를 사용하는 Java 웹·엔터프라이즈 프로젝트에 의존성 주입을 통합합니다.

빠른 시작

  1. 1

    Guice Core Maven 의존성(com.google.inject:guice)을 프로젝트에 추가하세요

  2. 2

    Maven Central에서 최신 버전을 확인하고 의존성에 설정하세요

사용 전 알아둘 점

  • Java 11 이상이 필요합니다.
  • 버전 6.0.0은 javax 패키지를 대상으로 하고, 7.0.0은 jakarta 패키지를 대상으로 하므로 사용 중인 스택에 맞는 버전을 선택하세요.

포함된 컬렉션

토픽

자주 묻는 질문

guice은(는) 무엇인가요?
Guice는 팩토리나 직접적인 객체 생성 없이 의존성을 주입할 수 있는 Java 11 이상용 경량 DI 프레임워크입니다. Guice는 Google에서 개발한 Java용 의존성 주입 프레임워크입니다. 핵심 아이디어는 클래스가 @Inject로 의존성을 선언하면 Guice가 해당 객체를 제공하므로, 애플리케이션 코드에서 new를 호출하거나 팩토리 클래스에 의존할 필요가 없다는 것입니다. 이를 통해 코드를 더 쉽게 변경하고 단위 테스트하며 다양한 맥락에서 재사용할 수 있습니다.
guice은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
guice은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
guice은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. guice의 마지막 커밋은 2026년 10월 30일입니다.
guice은(는) 어디에 사용할 수 있나요?
컴포넌트가 직접 의존성을 생성하는 대신 주입받도록 Java 애플리케이션을 구성합니다. mock이나 대체 구현을 적용해 클래스를 더 쉽게 단위 테스트합니다. javax 또는 jakarta API를 사용하는 Java 웹·엔터프라이즈 프로젝트에 의존성 주입을 통합합니다.
guice는 어떻게 설치하나요?
Guice Core Maven 의존성(com.google.inject:guice)을 프로젝트에 추가하세요 Maven Central에서 최신 버전을 확인하고 의존성에 설정하세요
guice은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/google/guice

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트