La idea de base es la misma: utilizar el guice-bridge proporcionado por HK2. El mecanismo exacto difiere ligeramente.
Primero definimos una clase que realiza el enlace entre las dos librerias de inyección de dependencia.
La clase es sencilla pero tiene su dificultad comprender como funciona. Si nos fijamos en el constructor vemos que está anotado con un @Inject y su único parámetro es un ServiceLocator. El ServiceLocator es el equivalente al Injector de Guice. Esta clase la creará el cliente de Jersey y por tanto las dependencias las inyectará HK2 y no Guice.
Por otro lado tenemos el inyector de Guice definido como un atributo estático de la clase. Eso es así para poder romper el círculo ya que no podemos crear una clase que reciba ambos inyectores (el de Guice y el de HK2). El de Guice lo inyectamos de manera estática. Yo lo hago en el AppModule, mi módulo Guice principal de la aplicación.
Una vez tenemos ambos inyectores ya podemos crear el puente entre ambos como se puede ver en el método configure.
Una vez lista la clase JerseyClientGuiceInjector ya podemos utilizarla en nuestros clientes REST.