Passing the name of an inner class in the form <name of outer class>.<name of inner class> (i.e. "Map.Entry") yields an incorrect result from JavaSource.resovleType. The reason is that it ends up in resolveTypeInternal which finds the '.' in the name and hence assumes it to be fully qualified.
The correct behavior is propably to always strip of the leaf name and check if the remaining name resolves to a class or a package.