studio paquetes org mexico library language scala intellij-idea

paquetes - ¿Qué es el paquete_root_ en Scala?



r packages list (3)

Estoy usando IntelliJ IDEA con el plugin de Scala. Si hago referencia a HashMap en el código y luego uso Alt-Enter para agregar la importación, el paquete se importa como:

_root_.scala.collection.immutable.HashMap

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


La especificación del lenguaje Scala tiene esto que decir sobre _root_ en la sección 9.4 Referencias de paquetes

El nombre predefinido especial _root_ refiere al paquete raíz más externo que contiene todos los paquetes de nivel superior.

Consulte el siguiente PDF para obtener la referencia completa del idioma: http://www.scala-lang.org/docu/files/ScalaReference.pdf


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 ya comienzan si tienes un paquete scala ya sea como ancestro o anidado en el paquete actual.


Tiene que hacer que las importaciones de scala sean relativas, _root_ le da una forma de especificar un nombre de paquete absoluto. Ver la Wiki Scala