org.jvnet.hk2.guice.bridge.internal.GuiceServiceHk2Bean assumes a name descriptor will always be null which will later prevent HK2 from doing a named injection.
I took a stab at correcting the issue but I didn't know how to push it java.net. I pushed the change to github for time being: https://github.com/theyelllowdart/hk2/commit/122773e3bd08646bc74d2f955a086687cfc375d0
I like your solution with one comment being that you shouldn't depend on non-public API in hk2-locator. I may try to move that utility down to hk2-utils to make more public (or even put it somewhere truly public). Other than that it is a nice fix, thanks!
Fixed this (mainly) as per your patch. Named injection should work properly now