¿Puedes depurar un objetivo experto con Intellij IDEA? Sé que puedo hacer clic derecho y ejecutar Depurar . Sin embargo, el complemento maven no aparece en mi lista de Bibliotecas externas , por lo que no puedo entrar en el código y establecer un punto de interrupción. Por lo tanto, Debug recorre los objetivos sin detenerse, como lo hace Run .
Estoy usando OS X 10.8 e IDEA 12.0.2.
EDITAR: Objetivo
Escribí specRunner personalizado para https://github.com/searls/jasmine-maven-plugin ; sin embargo, $ specs $ permanece vacío. Así que trato de ver qué archivos están cargados realmente.
intellij-idea
rweng
fuente
fuente
Respuestas:
Lo averigué:
mvnDebug
lugar demvn
. P.ejmvnDebug clean
Remote
configuración.fuente
mvn test -Dtest=com.example.MyTest
(mi caso de prueba falla solo cuando se ejecuta usando maven)? Los puntos de interrupción de IDEA se ignoran en este caso, parece ... :(Muy fácil. Estoy usando Intellj Idea 15.0.4
Aquí hay una captura de pantalla:
fuente
Antigua pregunta, pero yo tenía la misma necesidad y me tomó un tiempo hacerla funcionar. Ojalá pueda ayudar a alguien.
Para probar el uso de depuración:
o
Cuando la ejecución se detiene y escucha el socket en la dirección 5005 (predeterminado), ejecuta su depurador remoto configurado.
Cómo configurarlo:
Ejecutar -> Editar configuraciones -> Transporte remoto: socket Modo depurador: Adjuntar puerto: 5005 (predeterminado)
-> Guardar.
fuente
La forma más fácil de depurar el objetivo de maven ÚNICAMENTE dentro de IntelliJ es crear un objetivo de maven regular y en la pestaña del corredor pasar esas opciones de VM:
Donde 8000 es un número de puerto para depuración remota.
Luego cree una nueva configuración remota con el puerto 8000. Ejecute esta configuración después de ejecutar maven goal.
fuente
Creo que la solución más fácil es agregar temporalmente el complemento maven como dependencia. Una vez hecho esto, IntelliJ lo tratará como cualquier otra dependencia y puede establecer puntos de interrupción de la forma habitual.
fuente
Puede consultar la respuesta anterior o simplemente agregar este complemento a pom.xml
Y ejecuta maven goal con en
mvn
lugar demvnDebug
. P.ejmvn spring-boot:run
En IDEA, agregue una configuración remota. En Configuración, establezca Transporte: Socket, Modo de depuración: Adjuntar, Host: localhost, Puerto: 8000 (puerto predeterminado de mvnDebug).
Ejecutar como depuración en IDEA, siempre que desee depurar el código.
fuente
Dado que está trabajando con Intellij, ya hay un depurador incorporado allí y no necesita usar necesariamente mvnDebug, que es una herramienta de línea de comandos. Consulte este tutorial: Cómo depurar aplicaciones Maven en Intellij IDEA .
El tutorial usa el complemento Maven Exec y le permite depurar la aplicación sin necesidad de usar la línea de comando o
MvnDebug
. Pensar que podría ser valioso aquí.fuente
exec:java
. Sin embargo, si necesita proporcionar argumentos adicionales para JVM, debe usarexec:exec
(Consulte stackoverflow.com/questions/7305090/… ), que no se puede depurar de esa manera.La respuesta de @Peter Szanto funciona para mí, pero no me gusta ensuciar mi código fuente.
Y no puedo hacer
MvnDebug
que funcione de esa manera.Así que lo intento de otra manera, agrego la fuente del complemento como módulo IDEA .
Aquí está el paso detallado:
Clona la fuente del complemento como un proyecto independiente.
En su proyecto, vaya
File -> New -> Module from Exist Sources
y agregue el proyecto de complemento que clonó en el paso 1.Ahora puede abrir el código fuente del complemento y establecer un punto de interrupción.
Ejecute su objetivo de maven como modo de depuración, debería detenerse en el punto de interrupción.
fuente