如何从
Java访问Scala包对象中包含的对象Foo?
package object domain { object Foo } domain$.MODULE$.Foo$.MODULE$
解决方法
也许这一点与Scala 2.8.1一样,但是建议的域$Foo $.MODULE $不起作用.你必须使用domain.package $Foo $.MODULE $.
对于对象,方法等来说,它有点不同.给出了scala类:
package object domain { object foo def bar = 42 val baz = 1.0 }
您可以访问Java中的foo,bar和baz,如:
domain.package$foo$.MODULE$ domain.package$.MODULE$.bar() domain.package$.MODULE$.baz()
当我试图弄清楚这一点的时候,我以为我们有麻烦,因为Scala生成一个名为package的类,当然你不能用Java导入.幸运的是,我们只需要可以导入的$companion对象.