我正在尝试从Play Java类调用Scala方法,该方法将ClassTag作为参数
我失败的尝试是
Option<LocalUser> localUser = Cache.getAs(userId.userId(), app, new ClassTag<LocalUser>() );
API方法如下所示
Cache.getAs(String key, Application app, ClassTag<LocalUser> ct );
最佳答案
从Java调用不同的Scala API时遇到相同的问题。您将使用:
ClassTag<LocalUser> tag = scala.reflect.ClassTag$.MODULE$.apply(LocalUser.class);
我不确定Scala为什么需要另一个类和一个静态对象,但是我认为这本质上等同于静态方法
ClassTag.apply(Class)
。