vivo videos lunar luna julio java eclipse scala playframework-2.0

java - videos - ¡Cómo hacer que Eclipse vea los cambios en Play! plantillas compiladas?



el eclipse en vivo (4)

Entonces, estoy probando Play 2 con Eclipse. Creo un nuevo proyecto, lo compilo, ejecuto eclipsify y lo importo a Eclipse. Hasta ahora tan bueno.

El problema que tengo es que cuando hago un cambio en la plantilla de Scala, mis controladores Java no pueden verlo y Eclipse marca el código como no válido. Por ejemplo:

Agregué un segundo parámetro en mi plantilla de índice

@(message: String, nesto:Integer)

Cuando intento procesar mi archivo desde el controlador, la siguiente línea muestra un error, porque Eclipse aún cree que el index.render toma una cadena.

return ok(index.render("Your new application is ready.",2));

Activé la actualización del área de trabajo en Eclipse, y el juego eclipsify automáticamente agregó el directorio classes_managed a la ruta de compilación.


  1. Ejecuta ''play eclipse'' en la línea de comando
  2. En Eclipse, actualice su proyecto presionando F5


Hice las siguientes cosas:

  1. Como lo hizo, activé la actualización automática del área de trabajo (en la configuración, General -> Área de trabajo, luego seleccioné "Actualizar mediante ganchos nativos o agrupación")
  2. classes_managed directorio classes_managed generado por play eclipsify de mi ruta de compilación, y lo agregué manualmente usando "Agregar carpeta de clase externa"

Y luego funcionó para mí. Parece que hay un error con el comando eclipsify .


Para Java Play Framework v2.4.6 (activator v1.3.7) con Eclipse Mars:

En lugar de @(message: String, nesto:Integer) , ¿has probado esto @(message: String)(nesto: Integer) ?

Para que no tenga un "error no se puede resolver" con su index.render() , puede agregar <classpathentry kind="lib" path="target/scala-2.11/classes"/> a su .classpath o haga clic con el botón derecho en su proyecto -> Crear ruta -> Configurar crear ruta -> Agregar carpeta de clases y haga que apunte a target/scala-2.11/classes .