seleccionadas - Asignación de un atajo de teclado para una configuración de construcción de Eclipse específica
minimizar metodos eclipse (4)
En nuestro proyecto Java en Eclipse, tenemos varias configuraciones de compilación, ya que tenemos un motor que, cuando se ejecuta, construye un jar de instalación para proyectos específicos según los parámetros que obtiene, de modo que cada configuración de compilación ejecuta la misma compilación con diferentes parámetros para construir la instalación para un proyecto específico.
Actualmente, tengo que ir al botón desplegable Configuración de ejecución en la barra de herramientas para iniciar el motor, y debo seleccionar la configuración de compilación de la lista para ejecutar (o depurar) el motor con los parámetros requeridos.
He configurado Eclipse para ejecutar la ejecución de la última ejecución si se ejecuta el botón en lugar de seleccionarlo en el menú desplegable, pero realmente me gustaría tener botones separados en la barra de herramientas para cada configuración de compilación (o para mis configuraciones favoritas), y aún mejor, tenga un atajo de teclado para ejecutar (o depurar) una configuración de construcción específica. ¿Es eso posible?
Podría definir un complemento con algunos launchShortcuts
de launchShortcuts
.
Este hilo es una buena ilustración.
Pero para vincularlo realmente, necesitaría definir un comando ejecutando esa configuración, y vincular ese comando a una clave (como en este archivo de configuración plugin.xml
)
la definición abreviada de una configuración de inicio:
<shortcut id="org.maven.ide.eclipse.pomFileAction"
category="org.maven.ide.eclipse"
class="org.maven.ide.eclipse.actions.ExecutePomAction"
icon="icons/m2.gif"
label="%m2.popup.pomFile.label"
modes="run,debug">
<contextualLaunch>
<contextLabel label="%m2.popup.pomFile.label" mode="run"/>
<contextLabel label="%m2.popup.pomFile.label" mode="debug"/>
<enablement>
<with variable="selection">
<count value="1"/>
<iterate>
<and>
<test property="org.maven.ide.eclipse.launchable"/>
<adapt type="org.eclipse.core.runtime.IAdaptable"/>
</and>
</iterate>
</with>
</enablement>
</contextualLaunch>
</shortcut>
Entonces el comando:
<extension point="org.eclipse.ui.commands">
<command id="org.maven.ide.eclipse.pomFileAction.run"
categoryId="org.eclipse.debug.ui.category.run"
name="%m2.shortcut.description.run"
description="%m2.shortcut.description.run"/>
...
</extension>
Luego, la vinculación de teclas para un atajo de teclado:
<extension point="org.eclipse.ui.bindings">
<key sequence="M3+M2+X M"
contextId="org.eclipse.ui.globalScope"
commandId="org.maven.ide.eclipse.pomFileAction.run"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
</extension>
Pude armar pasos específicos basados en el hilo de splintor y poner esto en funcionamiento (también agregué un bucle en la parte superior que encuentra cualquier lanzamiento existente con el mismo nombre y lo termina, haciendo que esto sea una macro de "reinicio"):
Para asignar atajos de teclado a configuraciones de lanzamiento de Eclipse específicas, realice los siguientes pasos:
Instale https://sourceforge.net/projects/practicalmacro/ , que puede dentro de Eclipse a través de Ayuda-> Actualizaciones de software: http://puremvcnotificationviewer.googlecode.com/svn/trunk/PracticallyMacroGoogleUpdateSite
Reinicie Eclipse y abra las Preferencias de Eclipse. Tendrás una nueva sección llamada "Prácticamente opciones de macro", expande esa sección.
Haga clic en "Editor Macro Definitions"
Haga clic en "nuevo ..."
En la lista de comandos disponibles, desplácese hacia abajo hasta "Editor macro script (Beanshell)", selecciónelo y luego haga clic en "Agregar->"
Cuando aparezca el editor de scripts, agregue el siguiente código al código existente:
import org.eclipse.debug.core.DebugPlugin; import org.eclipse.debug.core.ILaunchConfiguration; import org.eclipse.debug.core.ILaunch; import org.eclipse.debug.ui.DebugUITools; try { // Terminate process if it already exists from a previous launch org.eclipse.debug.core.ILaunch[] allLaunches=DebugPlugin.getDefault().getLaunchManager().getLaunches(); for (ILaunch l : allLaunches) { if (l.getLaunchConfiguration().getName().equals("YOUR CONFIG NAME HERE")) { console.write("terminating launch: " ); console.writeln(l.getLaunchConfiguration().getName()); l.terminate(); break; } } org.eclipse.debug.core.ILaunchConfiguration[] allConfigurations=DebugPlugin.getDefault().getLaunchManager().getLaunchConfigurations(); for (ILaunchConfiguration config : allConfigurations) { if (config.getName().equals("YOUR CONFIG NAME HERE")) { DebugUITools.launch(config, "debug"); break; } } } catch (CoreException e) { e.printStackTrace(); } finally{}
Observe la línea 11 que verifica el nombre de la configuración, reemplace con lo que quiera
También tenga en cuenta el comando DebugUITools.launch en la línea 15, puede pasar "ejecutar" o "depurar"
En la sección "Información de macros" en la parte inferior de este cuadro de diálogo, especifique un nombre de macro
¡IMPORTANTE !: Si desea poder ver esta macro en el diálogo de enlace de clave de Eclipse estándar, debe asignar una identificación. Empecé con 1 ...
Haga clic en Aceptar
Expande la sección "General" y haz clic en "Teclas"
Ahora puede buscar las posibles combinaciones de teclas para el nombre de su nueva macro y asignarla a cualquier tecla que desee.
NOTA: Después de asignar una clave, a menudo tuve que cerrar y reiniciar Eclipse antes de que se respetara el enlace de la clave.
Pude hacerlo usando https://sourceforge.net/projects/practicalmacro/ - mira este hilo .
Una alternativa es usar las teclas del acelerador para navegar por el menú Ejecutar y seleccionar la configuración de ejecución correcta.
En mi computadora es:
Alt + R , H , Número
Alt + R te lleva al menú Ejecutar, luego a H para el Historial de depuración, luego a una de las alternativas numeradas.
Para hacer que una configuración de ejecución siempre esté visible en los menús del historial de depuración o ejecución y conservar su posición, uno puede hacer lo siguiente:
Seleccione el menú Ejecutar -> Configuraciones de ejecución -> [alguna configuración] -> Común , luego marque Mostrar en el cuadro del menú de favoritos .
(Esta respuesta es una copia de una de mis respuestas anteriores ).