1.概述
有时在Scala中调用Java的库,Java库会返回某些Java的集合或类型,必须经过一些转换才能正常使用。
否则有可能在编译的过程遇到这个错误。
错误字符串
下面是错误的主要信息。
Scala Java Error: value filter is not a member of *
2.解决办法
在代码中引入下面名字空间,引用Java和Scala的各种集合和类型之间的隐式转换。
import collection.JavaConversions._
但是我的加了这句话,然后有时候代码是正常的,有时候代码是不正常的。我就是在scala代码中调用了java的类,对其进行赋值。
后来发现我的实体类是这样的
@Data
public class AlternateConfig {
private String key;
private String version;
private String translation;
public AlternateConfig(String key, String version, String translation) {
this.key = key;
this.version = version;
this.translation = translation;
}
}
然后我添加get set
方法就好了,可能和scala的时候,Lombok查询中间有编译程序get set的方法时候,对scala不生效
3.场景再现2
20201030号再现了这个问题