Dagger currently does not support wildcard types in the injection. You need to inject a concrete type, or a raw type (as you found).
In theory simple wildcards could be supported, so long as what was provided was Foo<?>
and what was injected was Foo<?>
- matching partially would be prohibitive.