Cómo utilizar Scala de IntelliJ IDEA (o: por qué es tan difícil conseguir un IDE para trabajar Scala)?

StackOverflow https://stackoverflow.com/questions/2668153

Pregunta

Hace poco me di por vencido tratando de utilizar Scala de Eclipse (cosas básicas como la terminación no funciona). Así que ahora estoy tratando de IntelliJ. Hasta ahora no recibo muy lejos.

He sido capaz de editar programas (dentro de resaltado de sintaxis y finalización ... yay!). Pero soy incapaz de funcionar incluso el más simple "Hola mundo". Este fue el error original:

Scala signature Predef has wrong version
Expected 5.0
found: 4.1 in .... scala-library.jar

Pero eso fue ayer con IDEA 9.0.1. Véase más abajo ...

Actualizar

Hoy he desinstalado IntelliJ 9.0.1, 9.0.2 e instalado disponibilidad temprana, con la versión 4/14 estable del plug-in Scala.

Entonces configuración de un proyecto desde cero a través de los magos:

  • nuevo proyecto desde cero
  • JDK es 1.6.u20
  • aceptar el valor predeterminado (proyecto) en lugar de / módulo
  • mundial
  • aceptar la descarga de Scala 2.8.0beta1 en la carpeta lib
  • del proyecto

Se creó una nueva clase:

object hello {
  def main(args: Array[String]) {
    println("hello: " + args);
  }
}

En mis esfuerzos, ahora tengo un error de nuevo:)

Aquí está:

scalac error interno: Clase java.lang.ClassNotFoundException [java.net.URLClassLoader $ 1.run (URLClassLoader.java:202), java.security.AccessController.doPrivileged (Native Method), java.net.URLClassLoader.findClass ( URLClassLoader.java:190), java.lang.ClassLoader.loadClass (ClassLoader.java:307), sun.misc.Launcher $ AppClassLoader.loadClass (Launcher.java:301), java.lang.ClassLoader.loadClass (ClassLoader.java : 248), java.lang.Class.forName0 (Native Method), Java.Lang.Class.forName (Class.java:169), org.jetbrains.plugins.scala.compiler.rt.ScalacRunner.main (ScalacRunner.java : 72)]

INFORME FINAL DE ACTUALIZACIÓN

He desinstalado y reinstalado EA 9.0.2 9.0.1, pero esta vez fui con la versión de Scala en lugar de la opción predeterminada 2.7.6 2.7.3, 2.7.3, porque es la que se muestra en las capturas de pantalla en el IntelliJ sitio web (supongo que las capturas de pantalla demuestran que, efectivamente, a prueba esta versión!). Ahora todo funciona !!!

¿Fue útil?

Solución

Me he encontrado con el mismo error scalac al intentar ejecutar un proyecto Scala de IntelliJ IDEA 9.0.2 y he logrado encontrar una solución por casualidad :). Estos son los pasos que di en la creación del proyecto y ejecutarlo.

He creado un proyecto Scala de IntelliJ IDEA 9.0.2 final (que fue lanzado hoy en día). He instalado el plugin Scala, reiniciar el IDE y ha creado un nuevo proyecto Scala (con el nombre de "TestScala") con scala-2.8.0.Beta1 como biblioteca de proyectos. Una vez creado el proyecto y las bibliotecas Scala descargado, he creado un archivo Test.scala con el siguiente contenido:

object Test  {
 def main(args:Array[String]){
   println("hello")
 }
}

Después de eso, creó una configuración de lanzamiento ( "Editar Configuraciones"), la elección de la plantilla "Aplicación". Me puse como clase principal de prueba y elegir el nombre del proyecto ( "TestScala") en el "Uso ruta de clase y JDK del módulo de" cuadro combinado. Cuando ejecuto la configuración me sale el mismo error que usted reportó ( "scalac error interno: java.lang.ClassNotFoundException clase").

Ahora viene la parte extraño :). Me haga clic derecho sobre el proyecto, seleccionar "Ajustes del módulo", echar un vistazo a todas las configuraciones, pero No cambio nada . Haga clic en "Aplicar" y "OK", tratan de ejecutar la configuración de una y que funciona :).

Yo uso IntelliJ IDEA 9.0.2 la versión final (build 95 a 66); Ubuntu 9.10 y JDK 1.6.0_18. También tengo que mencionar que tenía un JDK configurado en IntelliJ, de lo contrario hay un paso adicional para configurarlo.

ACTUALIZACIÓN:

Para controlar si el del módulo, hay que hacer clic en el botón módulo-> Scala y Facets-> Scala (expandirla y haga clic sobre el Scala (Nombre del Proyecto)) . Ambos de estos ajustes son aproximadamente el compilador Scala y Scala ubicación de la biblioteca. Yo diría que estos valores no se fijan correctamente cuando se crea el proyecto, pero se guardan una vez que el usuario los toca y guarda los ajustes.

Otros consejos

Para responder a su pregunta, es difícil conseguir un IDE para trabajar Scala por dos razones: (A) Scala solo está empezando a llegar a un público amplio y (B) debido a (a), no hay ningún caso de negocios para pasar el tiempo en un IDE Scala.

Además, si tienes la edad suficiente para emitir su posterior mente y lo suficientemente joven como para todavía recuerdo, se sabría que durante los primeros cinco o más años de Java, que estaban atrapados con herramientas bien-ish como JBuilder que no hizo más de compilar el código cuando se lo dijo - destacando ningún error, sin importar refactorización automática, y la palabra ni siquiera existía. Si desea pionera, tiene que estar preparado para cortar un poco de la carretera a sí mismo, o por lo menos Bush-bash.

Yo sé que no le va a ayudar, pero yo he utilizado con éxito para IDEA Scala en Linux, Mac y Windows. Me suelen tener el SDK Scala instalado en algún lugar localmente e IDEA punto en el que en lugar de utilizar la opción 'Descargar'.

En la actualidad, sobre todo estoy usando una versión de IDEA 9 EAP a> en Mac OS X con Scala 2.8.0.Beta1-RC5 y está funcionando bien (salvo que el FSC no parece trabajado con fuentes mixtas).

Se podría probar suerte en el IDEA Scala Plugin foro de discusión , aunque no he tenido una gran cantidad de respuestas a mis propias publicaciones allí.

Instalación del plug-in es un requisito previo.

El siguiente que debe hacer es definir una biblioteca (proyecto específico global o, yo uso global) que mantiene la biblioteca Scala y archivos compilador JAR (como mínimo, de que scala-compiler.jar y scala-library.jar) . Adición de archivos JAR de origen y un frasco de documentación o URL es una buena idea, también. A continuación, hacer esta biblioteca una dependencia de cualquiera de los módulos en su proyecto que incluyen código Scala.

Por último, encontrar las facetas Scala de esos módulos y de-seleccionar ambas casillas allí.

acabo de hacer una instalación nueva y tenía exactamente el mismo problema mismo. Resultó que, debido a que había creado el archivo en el paquete raíz, IDEA había añadido una sentencia de paquete en la parte superior con el nombramiento de un paquete. Asumo que este luego se compila como "objeto de paquete principal" - sintaxis válida en 2.8? De todos modos, he borrado la línea que dicho envase y todo muy bien trabajado.

Yo tenía el mismo problema ayer al intentar configurarlo. Solución es bastante simple, sólo tiene que establecer algún lugar Scala de configuración del proyecto.

Se están mezclando código compilado con dos versiones diferentes Scala.

Yo uso Netbeans a los programas de escritura Scala. Hasta ahora funciona muy bien con mis códigos. Usted puede intentar el plugin aquí:. http://wiki.netbeans.org/Scala68v1

Me estaba recibiendo este error y también tuvo que hacer clic derecho sobre el proyecto y "Ajustes del módulo de puertas abiertas". Sin embargo, era algo más que golpear a aplicar. Tenía que asegurarse de que mi raíz de contenido era correcto para cada proyecto. Por alguna razón, había algunas carpetas de origen y de prueba incorrecto.

Mis usos de proyectos Maven como la principal herramienta de construcción e importar el proyecto en IntelliJ es probablemente lo que creó estas configuraciones incorrectas.

he tenido problema similar, siguiendo este Quepasa instrucciones colocar resolvieron el problema para mí

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top