26 votos

¿Cómo puedo hacer Eclipse y mvn appengine:devserver hablar el uno al otro?

Estoy en el proceso de conmutación de Google Plugin para Eclipse a la oficial de Google App Engine Plugin de Maven. La última cosa que, espero, que no puedo averiguar es cómo conseguir una buena depuración de flujo de trabajo establecido. Cuando yo estaba usando GPE, acaba de establecer breakpoints y el depurador se detiene allí automágicamente, pero cuando voy a ejecutar el dev server a través de mvn appengine:devserver, no creo que el dev server y eclipse son conscientes unos de otros.

¿Cómo puedo hacer hablar a cada uno de los otros?

39voto

antony.trupe Puntos 4358

Usted necesitará dos debug configurations.

El primero será el que ejecute su maven de destino, es decir, appengine:devserver. enter image description here

El segundo es un Remote Java Application configuración, y conectará la depuración del cliente a la devserver de la jvm.
enter image description here

Esto también requiere una jvm argumentos que se pasan a la maven objetivo.

<!-- GAE plugin -->
<plugin>
    <groupId>com.google.appengine</groupId>
    <artifactId>appengine-maven-plugin</artifactId>
    <version>1.7.5-SNAPSHOT</version>
    <configuration>
        <jvmFlags>
            <jvmFlag>-Xdebug</jvmFlag>
            <jvmFlag>-Xrunjdwp:transport=dt_socket,address=1044,server=y,suspend=y
            </jvmFlag>
        </jvmFlags>
        <disableUpdateCheck>true</disableUpdateCheck>
    </configuration>
</plugin>

Una vez que esas 3 cosas en su lugar, ejecute el maven configuración de depuración, a continuación, ejecute la depuración de configuración de cliente, entonces el ejercicio de su aplicación.

No hay soporte para hotswap todavía, así que si usted cambia cualquier no-archivos de recursos(de cualquier fuente de java), el devserver no los vea. Los archivos de recursos va a implementar(archivos estáticos: html, js).

1voto

SSR Puntos 6481

Usted debe ejecutar mvn de eclipse en modo de depuración.

enter image description here

En Eclipse se puede configurar de tal maven comandos de generación de eclipse la parte superior de la barra de herramientas "Ejecutar" -> "Configuración de Depuración" -> "Maven Build"

Una vez en maven es lanzado en eclipse modo de depuración debe ser capaz de golpear los breakpoints.

Editar- Otra opción es configurar la Depuración Remota i.e "Ejecutar" -> "Configuración de Depuración" -> "Remoto de Aplicaciones Java" y escuchar de depuración remota del puerto.e Usted debe asegurarse de appengine:devserver lanza con mando a distancia de puerto de depuración argumentos - de Referencia - la Depuración Remota en eclipse

1voto

Sherlock Holmes Puntos 1638

Esta pregunta puede dar una pista del problema. La Maven appengine:devserver se inicia el servidor de desarrollo en un proceso independiente. Eclipse sin embargo, sólo es consciente de la Maven proceso en sí mismo (esto es lo que se ve en la vista de depuración). Además, desde el dev server no se puede iniciar con argumentos tales como un puerto de depuración, probablemente nunca puede ser conectado a un depurador.

La cuestión vinculada sugieren que hay una no oficial Maven GAE plugin que toma argumentos. También hay un nuevo billete para mejorar el plugin oficial y una promesa por el plugin desarrollador para implementar esta característica pronto.

1voto

MattStep Puntos 341

Voy a ver qué más puedo hacer para que el eclipse de integración más fácil, pero ahora hay una actualización para el problema presentado a la appengine-maven-plugin proyecto : http://code.google.com/p/appengine-maven-plugin/issues/detail?id=3&can=1 así que eche un vistazo y ver si el soporte para la jvm argumentos pueden ayudarte.

Por favor, hágamelo saber sus experiencias, siempre estoy a favor de que las cosas están impresionantes.

0voto

antony.trupe Puntos 4358

Yo más o menos siga los pasos que @ developers.google.com/appengine/docs/java/webtoolsplatform en favor de mi método anterior.

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X