2009-03-26 18 views
37

Estoy usando IntelliJ IDEA con el plugin Scala. Si me refiero a HashMap en el código, y luego usar Alt-Enter para agregar la importación, el paquete se importa como:¿Qué es el paquete _root_ en Scala?

_root_.scala.collection.immutable.HashMap 

¿Cuál es la raíz parte de esto? Parece que funciona con y sin ella.

Respuesta

40

Tiene que hacer que las importaciones de scala sean relativas - _root_ le brinda una manera de especificar un nombre de paquete absoluto. Consulte Scala Wiki

5

Solo lo necesitaría si dentro de su paquete actual tuviera un paquete anidado scala.collection.immutable que contenga HashMap. Esto sería preferido por una importación relativa sin la parte _root_.

Editar: Eso no estaba del todo bien, los problemas comienzan ya si tiene un paquete scala ya sea como ancestro o anidado en el paquete actual.

5

La especificación del lenguaje Scala tiene esto que decir acerca _root_ en la sección 9.4 Paquete Referencias

El prede fi nida nombre especial _root_ se refiere al paquete raíz más externa, que contiene todos los paquetes de nivel superior.

Véase el siguiente PDF para la referencia del lenguaje completo: http://www.scala-lang.org/docu/files/ScalaReference.pdf

Cuestiones relacionadas