我正在使用
java中的scala库,特别是一个返回[A,B]的函数.在我的java代码中,我可以这样做:
scalaFunction.callMethod(new Function<Either<A,B>>() { public byte[] apply(Either<A,B> result) { B right = result.right().??? } }
result.right()返回一个RightProjection,但是我无法在Java中导入它(使用IntelliJ).有没有一种正确的方法来处理Java中的任何对象?
解决方法
我没有对此进行测试,但根据ScalaDoc for
RightProjection
,您应该可以调用get().请注意,如果结果不是Right,则抛出异常.
为了在IDE中使用Scala类,IDE需要了解它们.因此,您需要将scala-library.jar添加到IDE中指定的构建路径中.对于IDE(以及Java编译器和运行时),Scala只是一个常规库,它是用Scala编写的所有库和程序的依赖项.