HK2 - Dependency Injection Kernel

A light-weight and dynamic dependency injection framework

HK2 is an implementation of JSR-330 in a JavaSE environment.

JSR-330 defines services and injection points that can be dynamically discovered at runtime and which allow for Inversion of Control (IoC) and dependency injection (DI).

HK2 provides an API for control over its operation and has the ability to automatically load services into the container.

It is the foundation for the GlassFish V3 and V4 application servers as well as other products.

HK2 also has powerful features that can be used to perform tasks such as looking up services or customizing you injections, as well as several extensibility features allowing the users to connect with other container technologies

The following list gives an overview of some of the things that can be customized or extended with HK2:

  • Custom lifecycles and scopes
  • Events
  • AOP and other proxies
  • Custom injection resolution
  • Assisted injection
  • Just In Time injection resolution
  • Custom validation and security
  • Run Level Services

Getting started

Read the introduction and get started with HK2.

API overview

Learn more about the HK2 API, or browse the javadoc.


Learn more about the features of HK2


HK2 is well integrated with GlassFish, Spring and others !