番石榴可以用于反射按名称加载的 类 吗?

Can guava be used for reflection on classes that are loaded by name?

中,我被称为番石榴作为反射泛型的解决方案,它看起来很棒,除了我尝试在按名称加载的 classes 上使用它时出错:

Class clazz = Class.forName("net.redpoint.scratch.Derived");
TypeToken tt = new TypeToken(clazz) {};

这会导致错误:java.lang.IllegalArgumentException:class com.google.common.reflect.TypeToken 未参数化

有没有什么方法可以在编译时没有 class 的情况下使用 TypeToken?请注意,我也没有这些 classes.

的来源

正如M Prokhorov所说,"use TypeToken.of(class)"