Java 泽西岛警告-无法解析为混凝土类型

Java 泽西岛警告-无法解析为混凝土类型,java,spring,generics,jersey,warnings,Java,Spring,Generics,Jersey,Warnings,我将Jersey1.19用于RESTAPI。我的一个资源类有一个setter方法,如下所示: private Registrar<String, EventBatchDeserializer<?>> versionedDeserializer; public void setVersionedDeserializer(Registrar<String, EventBatchDeserializer<?>> versionedDeserialize

我将Jersey
1.19
用于RESTAPI。我的一个资源类有一个setter方法,如下所示:

private Registrar<String, EventBatchDeserializer<?>> versionedDeserializer;

public void setVersionedDeserializer(Registrar<String, EventBatchDeserializer<?>> versionedDeserializer) 
{
    this.versionedDeserializer = versionedDeserializer;
}
私人注册机构

现在,问题是Jersey对注册器使用的setter发出警告,该setter的参数1不能解析为具体类型


我正在使用Tomcat8.0开发webapp。有谁能告诉我为什么我会收到这个警告,解决方法是什么

如果将
EventBatchDeserializer
的类型参数中的通配符替换为具体类型,则警告应该消失,例如,方法签名可能如下所示:

public void setVersionedDeserializer(Registrar<String, EventBatchDeserializer<Foo>> versionedDeserializer)
public void setVersionedSerializer(注册器VersionedSerializer)
显然,这比通配符更具限制性。也许你可以使用
Foo
界面。如果只有一个通配符符合你的需要,我想你必须接受警告。如果一切按预期进行,忽略它可能没有什么害处

public void setVersionedDeserializer(Registrar<String, EventBatchDeserializer<Foo>> versionedDeserializer)