如何使用完全限定名称导入类?

Jus*_*s12 4 scala scala-2.9

test1.scala使用以下代码创建文件:

package test
import java.io.FileInputStream
object Foo 
Run Code Online (Sandbox Code Playgroud)

test2.scala使用以下代码创建另一个文件:

package test.java
object Bar 
Run Code Online (Sandbox Code Playgroud)

现在编译为scalac test1.scala test2.scala:

我们得到错误:

test.scala:2: error: object io is not a member of package test.java
import java.io.FileInputStream
            ^
one error found
Run Code Online (Sandbox Code Playgroud)

我认为错误是因为Scala认为java上面指的是包test.java.除了重命名包之外,如何解决这个问题?

Rég*_*les 8

import _root_.java.io.FileInputStream
Run Code Online (Sandbox Code Playgroud)

或者为了简化操作,您可以使用别名:

import _root_.java.{io => jio}
import jio.FileInputStream
Run Code Online (Sandbox Code Playgroud)