2011-12-15 12 views
18

Tengo Eclipse Indigo con el complemento Scala IDE. Descargué un proyecto de ascensor de Maven. Se construye correctamente. Eclipse dice que lo está viendo con el editor de Scala.Eclipse que no reconoce el código de Scala

Sin embargo, sigue dando un error en cada línea porque trata el código como Java (da errores para no punto y coma, para la palabra "def", etc.) Intenté limpiar el proyecto y sigue dando los errores.

+0

Espero que el archivo se llame ".scala"? – aishwarya

+0

Una posible razón es que instaló Scala IDE 2.0 RC3 y tiene instalado el complemento Groovy. Si es así, actualice a RC4. –

+0

Sí, el archivo se llama Scala. Cogí el Scala IDE anoche, así que estoy bastante seguro de que es RC4. – Joe

Respuesta

44

Un par de cosas que intentaría:

1) Haga clic derecho en el proyecto, Configurar> Añadir Scala Naturaleza.

2) En el menú Scala, Ejecutar el programa de Diagnositics ...> Uso recomendado configuración predeterminada

+0

Esto causó la "pantalla roja de la muerte" (líneas onduladas rojas en todas partes para mí. Creo que fue porque edité mi archivo eclipse.ini para aumentar el tamaño del almacenamiento dinámico (como lo recomienda el complemento Scala al arrancar) y luego reinicié el eclipse Luego, los diagnósticos de instalación nunca volvieron a ejecutar, lo que provocó que el complemento de Scala no se configurara nunca correctamente. – jhclark

+3

Una cosa que me hizo tropezar: hay que estar en la Perspectiva de Scala para que Scala Nature esté disponible. – Lachlan

+0

¡esto funcionó para mí! ¿Qué es un Scala Nature? – Hristo

7

Abra el Explorador de paquetes, mira a tu fuente de Scala. ¿El ícono muestra un S (para Scala) o un J (para Java)?

Si ve un S, entonces es probable que se pierda el Scala Nature. Como sugirió Luigi, intente agregar Scala Nature y vea si eso soluciona el problema (haga clic con el botón derecho en Proyecto, Configurar> Agregar Scala Nature).

De lo contrario, si ve un J, las probabilidades son que "JDT Weaving" "no está habilitado. Eso no debería suceder y podría depender de otros complementos que haya instalado.

Lo que probaría si fuera usted es simplemente desinstalar todos los complementos Scala IDE de Eclipse ("Scala IDE for Eclipse", y también "JDT Weaving for Scala" si lo ve en la lista de complementos instalados). Luego, reinstale Scala IDE 2.0.0-RC04. Lo sé, no es la solución ideal, pero es difícil saber qué está pasando sin más información.

Si eso tampoco funciona, por favor escriba un mensaje en el scala-ide-user Mailing List. Asegúrese de proporcionar la lista completa de complementos que tiene en su instalación de Eclipse. Eso podría ayudarnos a entender lo que está pasando.

0

También he tenido este problema antes cuando uso Maven y Eclipse. Trabajaré en la perspectiva de Scala y todo estará bien, y en algún momento Índigo perderá por completo el hecho de que está usando Scala y está construyendo mi código con un compilador de Java. No hay forma de juguetear con Build Path y configuraciones, proyectos de limpieza o habilitar la naturaleza de Scala parece solucionarlo.

La única solución que he encontrado hasta ahora es usar IntelliJ cuando uso Maven, y uso el plugin Scala Eclipse solo cuando uso SBT para crear proyectos. Puedes intentar convertir tu Maven POM a un proyecto SBT, pero tendrás que actualizarlo cada vez que cambien tus dependencias. El plugin sbt-eclipse de Heiko Seeberger es bastante ingenioso.

+1

No tengo mucha experiencia con ScalaIDE + Maven, pero estoy muy sorprendido de escuchar eso. Sé con certeza que mucha gente usa el Scala IDE para Eclipse con Maven, y no sabemos de ningún problema. Lo que puede estar pasando es que regenere los archivos del proyecto de metadatos de Eclipse, y debido a eso, Scala Nature ya no está agregado a tu proyecto Agregar Scala Nature es muy fácil, simplemente haga clic derecho en proyecto, Configurar> Agregar Scala Nature. También puede estar interesado en m2eclipse-scala (https: // github.com/sonatype/m2eclipse-scala). –

+0

Lo comprobaré, Mirco. Gracias. – jamie

+0

¡Genial! Háganos saber cómo funciona, definitivamente necesitamos ayuda para mejorar la documentación del usuario con respecto a Scala IDE + Maven;) –

0

Tengo problemas similares, aunque cuando elimino el Scala Nature y lo vuelvo a agregar, se vuelve correcto. Lo cual está bien por ahora.

Pero hay otra cuestión:

clases Java Mi niegan a reconocer mis queridos Scala. Sin embargo, cuando hago un "Ctrl + clic" = Abrir declaración, va al lugar correcto. Mis clases de Java que dependen de Scala parecen rojas por todas partes. Comprobé la configuración de Build Path, etc., todos se ven bien.

2

Incluso puede ser más simple que eso, olvidé escribir el nombre del paquete en la parte superior del archivo fuente, por lo tanto, Eclipse omitió verlo como un archivo Scala.

6

Este problema puede aparecer al copiar un proyecto java existente para iniciar un nuevo proyecto o utilizar un generador de archivos de proyecto.

Una cosa que puede ver es su Java Build Path dentro de las propiedades del proyecto. Asegúrate de que la carpeta de origen de scala no tenga un filtro de inclusión como **/*.java. Asegúrese de que sea **/*.scala o quítelo y su fuente debe ser detectada por el complemento scala.

+0

Tuve el mismo problema y solo después de agregar elementos incluidos, los errores desaparecieron. –

+0

Esto también resolvió mis problemas, excepto que no tenía ninguna "carpeta fuente" listada. Crear una nueva carpeta, mover mis archivos fuente en ella y luego agregarla como una carpeta de origen desde el menú Ruta de compilación de Java solucionó mi problema. – Necrototem

+0

Sucede cuando cambio de brunches (git). ¿Sabes cómo eliminarlo para siempre? –

0

Mis clases de Java se niegan a reconocer mis Scala. Sin embargo, cuando hago un "Ctrl + clic" = Abrir declaración, va al lugar correcto. Mis clases de Java que dependen de Scala parecen rojas por todas partes. Comprobé la configuración de Build Path, etc., todos se ven bien.

Tuve el mismo problema. Cuando moví mis clases de Scala a la carpeta correcta del paquete, funcionó. Scala no necesita esto. Pero solo así el editor de Java reconoció la clase Scala.

1

me resolvió el problema de compilación/errores de compilación con SBT-Eclipse de

  1. Haga clic con el proyecto
  2. menú Scala -chose Instalación Nueva Scala y seleccione la versión hasta que se enumeran errores
1

Estaba enfrentando el mismo problema, porque en proyecto la carpeta scala no estaba incluida seguí los siguientes pasos proyecto -> propiedades -> ruta construida java -> fuente -> agregar publicación r

+0

Creo que esta respuesta fue una forma extraña de decir que el problema se solucionó haciendo los pasos descritos. – VasyaNovikov

0

Uso Maven para generar mi jar. Así que siguió los pasos a continuación Haga clic derecho en el proyecto -> Maven -> Actualizar proyecto -> Comprobar fuerza de actualización de instantáneas/versiones -> Aceptar

0

A veces, o en algunas versiones, no se ve el "Agregar Scala Nature" " opción.

Agregarlo a su archivo .project manualmente debería hacer. P.ej. este proyecto admite naturalezas scala y java, por lo que tratará .java como Java y .scala como Scala.

<projectDescription> 
    <name>myprojectname</name> 
    <buildSpec> 
    <buildCommand> 
     <name>org.scala-ide.sdt.core.scalabuilder</name> 
    </buildCommand> 
    </buildSpec> 
    <natures> 
    <nature>org.scala-ide.sdt.core.scalanature</nature> 
    <nature>org.eclipse.jdt.core.javanature</nature> 
    </natures> 
    <linkedResources> </linkedResources> 
</projectDescription> 
Cuestiones relacionadas