2010-09-29 28 views
7

rQuiero ejecutar embarcadero: ejecutar en modo de depuración con MAVEN_OPTS configurado en la variable de entorno. Pero se parece al código duro MAVEN_OPTS. ¿Es posible establecer MAVEN_OPTS en línea de comandos como mvn MAVEN_OPTS=...Depurando maven sin perder MAVEN_OPTS variable

Gracias.

Respuesta

18

¿Es posible configurar MAVEN_OPTS en la línea de comandos como mvn MAVEN_OPTS = ...

No, MAVEN_OPTS es una variable de entorno, no se puede establecer en la línea de comandos. Pero tú hay una alternativa. En lugar de mvn, simplemente puede ejecutar mvnDebug (una pequeña variación de la primera secuencia de comandos que establece las opciones de depuración):

 
$ mvnDebug jetty:run 
Preparing to Execute Maven in Debug Mode 
Listening for transport dt_socket at address: 8000 

puedo encontrar esta alternativa bastante práctico y fácil.

3

Encontré este problema, y ​​mi solución fue crear un archivo .bat para establecer las opciones de maven, y luego iniciar embarcadero.

call set MAVEN_OPTS=-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=8484,server=y,suspend=n %MAVEN_OPTS% 
call mvn jetty:run-war -DskipTests=true 

Mi IDE de elección es Eclipse, así que usar el botón de ejecución con la caja de herramientas para llamar a los archivos .bat. Aquí hay un question on running a .bat file.

+0

No necesita hacer un archivo .bat, simplemente ejecute los comandos. (no se puede olvidar la instrucción ** call **) – felipecrp

6

En Windows - No lo sé. En Linux/Bash - sí se puede:

export MAVEN_OPTS="-Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000" mvn jetty:run 
+0

No veo ninguna ventaja con respecto al uso de 'mvnDebug' si usa las mismas opciones. –

+0

La pregunta explícitamente hace referencia a la variable de entorno de configuración y ejecuta Maven con un comando. No digo que sea mejor que mvnDebug :). –

4

bajo Windows, debería ser capaz de hacer lo siguiente desde la línea de comandos:

set MAVEN_OPTS=<options you want to add> %MAVEN_OPTS% 
mvn jetty:run 

En Mac/Linux/Unix puede usar la exportación del Terminal:

export MAVEN_OPTS=<options you want to add> $MAVEN_OPTS 
mvn jetty:run 

No está seguro acerca de cómo hacer las exportaciones de un solo uso en Windows, pero en Unix como sistemas operativos sólo se puede anteponer la variable a su comando (esto funciona para cualquier variable de entorno que WA nt para agregar).

MAVEN_OPTS="option1 option2" mvn jetty:run 
Cuestiones relacionadas