从 Java 将 Scala Seq 传递到 Scala 函数

Pass Scala Seq into Scala function from Java

我已经用头撞 table 好几个小时了。我正在尝试调用在将 Seq<Object> 作为唯一参数类型的库中编写的函数。问题是,我似乎无法构造任何 Scala 想要识别为集合类型的东西。

我尝试了所有方法,从使用 Scala Buffers 等,到尝试转换为 Seq 或使用 $colon$colon 东西。什么都行不通,有人能给我指出正确的方向吗?

编辑:

这是我目前使用的代码

    List<Object> objs = new ArrayList<>();

    Object obj = new Object();
    objs.add(obj);   

    function(JavaConversions.asScalaBuffer(objs));

没有错误,但我收到 java.lang.String cannot be cast to [B

我省略了 new Object() 的一些参数,因为它是敏感数据

谢谢

java.lang.String cannot be cast to [B 表示您正在尝试将 String 传递给调用 byte[] 的方法(这就是 [B 的意思)。

尝试在您的 String 上调用 getBytes,这应该可以解决您的问题。

(注意:看来您的问题与您发布的代码无关。可能是您删除的 "sensitive" 部分。)