2010-06-29 15 views
11

Esto parece una cosa simple, pero no puedo encontrar una respuesta en las preguntas existentes:Configuración de lanzamiento global en Eclipse?

¿Cómo se agrega un argumento global a todas sus configuraciones actuales y existentes de ejecución o depuración? En mi caso, necesito un argumento VM, pero veo que esto también podría ser útil para los argumentos de la línea de fondo.

Básicamente, cada vez que creo una prueba unitaria necesito crear una configuración (o ejecutar, que crea una), y luego editar manualmente cada una con el mismo argumento VM. Esto parece una tontería para una herramienta tan buena.

+0

Nadie más ???? – orbfish

Respuesta

6

Ouch: 7-years bug, solicitando la ejecución de la plantilla de configuración, precisamente por ese tipo o motivo.

This thread propone una solución interesante, basado en la duplicación de una configuración falsa basada en la sustitución de cadena:

  1. Puede definir variables en Window->Preferences->Run/Debug->String Substitution. Por ejemplo, puede definir una variable projectName_log4j con el valor correcto -Dlog4j.configuration=....
    En una configuración de ejecución puede usar ${projectName_log4j} y no tiene que recordar el valor real.
  2. Puede definir una configuración de ejecución "vacía" específica del proyecto.
    Establezca el proyecto y los campos de argumentos en esta configuración pero no en la clase principal. Si tiene que crear una nueva configuración de ejecución para este proyecto, seleccione esta y use 'Duplicar' desde su menú emergente para copiar esta configuración.
    Simplemente tiene que establecer la clase principal y los argumentos del programa.

También puede combinar ambas soluciones: use una variable y defina una configuración de ejecución "vacía" que usa esta variable. La gran ventaja en este caso es cuando empiece a usar un archivo de configuración de log4j diferente, debe cambiar solo la declaración de la variable.

No es ideal, pero puede aliviar su proceso.

+0

¡Hrm ambas soluciones son más difíciles de lo que hago ahora! Me encanta el final de la descripción del error donde dicen que es demasiado difícil agregar funcionalidad básica. – orbfish

+0

No es una buena respuesta para mí, pero gana en virtud de ser la única;) – orbfish

11

Esto no es cierto. Puede agregar los argumentos de VM a la definición de JRE. Esto es exactamente para lo que es. Lo uso yo mismo para que las aserciones estén habilitadas y heap es 1024mb en cada ejecución, incluso en las futuras.

+0

Si solo es para las afirmaciones, hay una casilla en Preferencia -> JUnit -> [x] Añadir '-ea' a los argumentos de VM al crear una nueva configuración de lanzamiento JUnit. – leo

+0

Ver esta respuesta: http://stackoverflow.com/a/2309723/510583 – leo

Cuestiones relacionadas