plugin - ¿Múltiples libraies de Scala que causan un error en intellij?
scala para intellij (4)
Tienes archivos JAR de múltiples versiones de scala-library.jar
. Para que el error desaparezca, deberá eliminar los duplicados. Para averiguar qué versión desea conservar, puede ver el archivo de manifiesto dentro de cada JAR:
META-INF/MANIFEST.MF
Dentro del archivo de manifiesto, debería ver algo como esto:
Manifest-Version: 1.0
Class-Path:
Implementation-Title: Scala-Library
Implementation-Version: 2.11.4
El error está ocurriendo porque IntelliJ no puede determinar qué versión de una clase de Scala dada usar.
Estoy usando intellij 14 con Scala 2.11.6 instalado utilizando home brew y symlink usando
ln -s /usr/local/Cellar/scala/2.11.6/libexec/src /usr/local/Cellar/scala/2.11.6/src
ln -s /usr/local/Cellar/scala/2.11.6/libexec/lib /usr/local/Cellar/scala/2.11.6/lib
mkdir -p /usr/local/Cellar/scala/2.11.6/doc/scala-devel-docs
ln -s /usr/local/Cellar/scala/2.11.6/share/doc/scala /usr/local/Cellar/scala/2.11.6/doc/scala-devel-docs/api
Traté de ejecutar un simple hello world pero me encontré con el siguiente problema.
Error:scalac: Multiple ''scala-library*.jar'' files (scala-library.jar, scala-library.jar, scala-library.jar) in Scala compiler classpath in Scala SDK scala-sdk-2.11.6
Editar:
Así que compruebo la ruta de la clase del compilador en las bibliotecas globales y aparentemente hay múltiples scal-library.jar
file:///usr/local/Cellar/scala/2.11.6/idea/lib/scala-library.jar
file:///usr/local/Cellar/scala/2.11.6/lib/scala-library.jar
file:///usr/local/Cellar/scala/2.11.6/libexec/lib/scala-library.jar
¿Alguien sabe por qué?
También encontré ese error. La solución que encontré fue eliminar la biblioteca de scala duplicada en el archivo .iml generado por intellij.
Básicamente localicé el archivo .iml relevante al agregar la versión scala y encontré esa biblioteca scala en ese archivo. Eliminé la versión scala 2.11 y luego funciona.
Tal vez has usado
/usr/local/Cellar/scala/2.11.6/
como la ruta para Scala SDK?
Cuando instala scala con homebrew esa ruta contendrá no solo las bibliotecas scala, sino también un enlace simbólico con las bibliotecas relevantes para intellij. Entonces, si usa el directorio de instalación de nivel superior, intelliy encontrará las bibliotecas dos veces.
En cambio, deberías usar
/usr/local/Cellar/scala/2.11.6/idea/lib
Tuve el mismo problema de lo que experimentaste y la solución, realmente muy fácil, fue en realidad borrar la carpeta .idea del proyecto, el problema es que la configuración dentro de esta carpeta (que contiene las configuraciones, por ejemplo, para la prueba, VCS, las ejecuciones, etc.) se corrompe con entradas dobles (probablemente porque usted actualiza su versión de Scala), una vez que hace esto y vuelve a abrir el proyecto en Intellij, IDEA generará una nueva configuración para usted.