找不到从Groovy到Java的匹配方法


Groovyc: [Static type checking] - Cannot find matching method io.swagger.client.util.EmUtil#addLobList(java.lang.Object, java.lang.Object). Please check if the declared type is correct and if the method exists.

我在groovy中的一个静态块中调用这个函数,如下所示:

static {
Arrays.asList(LOBEnum.values()).forEach {lob -> EmUtil.getInstance().addLobList(lob.name(), lob.getLob())}
EmUtil.getInstance().setPrefix("CCB_Reference_Data_")
EmUtil.getInstance().init()
}

这调用了一个java函数,如下所示:

public void addLobList(String lob, String licenseLob) {
lobList.add(lob);
lobLicenseList.add(licenseLob);
}

看起来lob.name()lob.getLob()的返回类型都是Object。如果要将这些方法的返回值用作addLobList方法的参数,则静态类型检查器需要确保这些是String实例。你可以用(String)铸造这些。或者,您可以将这些方法的返回值更改为String

最新更新