Sugerencias y trucos (JDT)

Editar Refactorización Navegación Buscar Vistas Varios Depurar

Editar el fuente

Asistencia de contenido La asistencia de contenido proporciona una lista de propuestas para concluir series parcialmente tecleadas. En el editor Java, pulse las teclas Control+Espaciadora o bien invoque Editar > Asistencia de contenido.

Diálogo de selección de asistencia de contenido

La asistencia de contenido en los comentarios de Javadoc La asistencia de contenido también está disponible en los comentarios de Javadoc.

Asistencia de contenido para comentarios de Javadoc

Suprimir tipos en la asistencia de contenido Para excluir la aparición de determinados tipos en la asistencia de contenido, utilice la característica de filtro de tipos configurada en la página de preferencias Abre la página de preferencias de filtros de tipo Java > Aspecto > Filtros de tipo. Los tipos que coincidan con alguno de estos patrones de filtro no aparecerán en el diálogo Abrir tipo y no estarán disponibles en la asistencia de contenido, arreglos rápidos y organización de importaciones. Estos patrones de filtro no afectan a las vistas Explorador de paquetes y Jerarquía de tipos.

Página de preferencias de filtro de tipo

La asistencia de contenido para las conclusiones de variables, parámetros de métodos y nombres de campos Puede utilizar la asistencia de contenido para agilizar la creación de campos, parámetros de métodos y variables locales. Con el cursor situado después del nombre de tipo de la declaración, invoque Editar > Asistencia de contenido o bien pulse las teclas Control+Espaciadora.

Sugerencias de nombres de campo

Si utiliza un prefijo o un sufijo de nombre para campos, variables locales o parámetros de método, asegúrese de especificarlo así en la página de preferencias Abre la página de preferencias de estilo de código Java > Estilo de código.

Sugerencias de parámetros Con el cursor en un argumento de un método, podrá ver una lista de sugerencias para los parámetros. En el editor Java, pulse las teclas Control+Mayús+Espaciadora o bien invoque Editar > Sugerencias de parámetros.

Ayuda flotante de las sugerencias de parámetro

La asistencia de contenido en las clases anónimas La asistencia de contenido también proporciona ayuda para crear una clase anónima. Con el cursor situado después del corchete de apertura para crear una instancia de una clase, invoque Editar > Asistencia de contenido o bien pulse las teclas Control+Espaciadora.

Asistencia de contenido en una clase anónima

Así se creará el cuerpo de la clase interior anónima, incluidos todos los métodos que deben estar implementados.
Conmutar entre insertar y sustituir con la asistencia de contenido Cuando se invoca la asistencia de contenido en un identificador existente, puede sustituir el identificador por la conclusión elegida o hacer una inserción. El comportamiento predeterminado (ya sea sobrescribir o insertar) se define en la página de preferencias Abre la página de preferencias Asistencia de contenido Java > Editor > Asistencia de contenido.
Puede conmutar temporalmente el comportamiento mientras está dentro del diálogo de selección de la asistencia de contenido, pulsando la tecla Control sin soltarla mientras selecciona la conclusión.
Asistencia de contenido incremental Por omisión, ahora la asistencia de contenido insertará prefijos comunes automáticamente, de manera parecida a la expansión de la shell Unix. Para cambiar ese comportamiento, quite la marca del valor de la página de preferencias Abre la página de preferencias Asistencia de contenido Java > Editor > Asistencia de contenido.
Personalizar la asistencia de contenido Novedad en 3.2 Al invocar repetidamente la asistencia de contenido (Control+Barra espaciadora) se va pasando por diferentes categorías de propuestas.

Asistencia de contenido con propuestas de plantilla de método nuevas

Para configurar qué categorías desea mostrar, utilice la página de preferencias Abre la página de preferencias Asistencia de contenido Java > Editor > Asistencia de contenido> Avanzadas.

También puede asignar accesos directos de teclas aparte para las categorías de propuestas favoritas.

Crear métodos get y set Para crear métodos get y set para un campo, seleccione la declaración del campo e invoque Fuente > Generar método get y set.

Diálogo Generar métodos get y set

Si utiliza un prefijo o un sufijo, asegúrese de especificarlo así en la página de preferencias Abre la página de preferencias Estilo de código Java > Estilo de código.
Utilizar la asistencia de contenido para crear métodos get y set Otra forma de crear métodos get y set es utilizando la asistencia de contenido. Coloque el cursor en el cuerpo de tipo, entre miembros, y pulse las teclas Control+Espaciadora para obtener las propuestas que crean un apéndice de método get o set.
Asistencia de contenido para crear un método set
Suprimir los métodos get y set junto con un campo Cuando se suprime un campo en una vista, Eclipse puede proponer la supresión de sus métodos get y set. Si utiliza un prefijo o un sufijo para campos, asegúrese de especificarlo así en la página de preferencias Abre la página de preferencias Estilo de código Java > Estilo de código.
Crear métodos de delegación Para crear un método de delegación para un campo, seleccione la declaración del campo e invoque Fuente > Generar métodos de delegación. Así se añaden los métodos seleccionados al tipo que contiene una llamada de reenvío a los métodos delegados. A continuación figura un ejemplo de un método de delegación:
Ejemplo de método de delegación
Crear hashCode() y equals()
Novedad en 3.2
Para crear los métodos hashCode() y equals(), invoque Fuente > Generar hashCode() y equals().

Diálogo Generar hashCode() y equals()

Utilizar plantillas para crear un método Puede definir una plantilla nueva que contenga un apéndice de método utilizando la página de preferencias Abre la página de preferencias Plantillas del editor Java > Editor > Plantillas. Las plantillas se muestran juntamente con las propuestas de la asistencia de contenido (teclas Control+Espaciadora).
También hay plantillas existentes, como las plantillas 'private_method', 'public_method' y 'protected_method', entre otras.
Utilice la tecla Tabulador para navegar entre los valores que desea entrar (tipo de retorno, nombre y argumentos).

Asistencia de contenido con propuestas de plantilla de método nuevo

Utilizar un arreglo rápido para crear un método nuevo Empiece por la invocación del método y utilice la función Arreglo rápido (teclas Control+1) para crear el método.

Arreglo rápido de 'Crear método'

Utilizar un arreglo rápido para cambiar una signatura de método Añada un argumento a una invocación de método a un sitio de llamada. A continuación, utilice Arreglo rápido (Control+1) para añadir el parámetro necesario en la declaración del método.

Arreglo rápido de 'Cambiar signatura'

Utilizar la asistencia de contenido para crear un apéndice de constructor En la posición en la que desee añadir el nuevo constructor, utilice la asistencia de contenido tras teclear las primeras letras del nombre del constructor.
Crear constructor en la asistencia de contenido
Crear campos nuevos a partir de parámetros ¿Desea crear campos nuevos para almacenar los argumentos que se pasan al constructor? Utilice la asistencia rápida (Control+1) en un parámetro para crear la asignación y la declaración de campo y deje que Eclipse proponga un nombre teniendo en cuenta las preferencias de estilo de código.
Asistencia rápida de 'Asignar parámetro a un campo nuevo'
Utilizar la asistencia de contenido para alterar temporalmente un método Invoque la asistencia de contenido (teclas Control+Espaciadora) en el cuerpo del tipo, en la ubicación donde debe añadirse el método. La asistencia de contenido ofrecerá todos los métodos que se pueden alterar temporalmente. Se creará el cuerpo del método elegido.

Asistencia de contenido de 'Alterar temporalmente método'

Utilizar un arreglo rápido para añadir métodos no implementados Para implementar una interfaz nueva, añada primero la declaración 'implements' al tipo. Incluso sin guardar ni construir, el editor Java subrayará el tipo para señalar que faltan métodos y mostrará la bombilla de un arreglo rápido. Pulse la bombilla o accione las teclas Control+1 (Editar > Arreglo rápido) para elegir entre añadir los métodos no implementados o hacer que la clase sea abstracta.

Propuesta de 'Añadir métodos no implementados' que ofrece el Arreglo rápido

Alterar temporalmente un método de una clase base Para crear un método que altere temporalmente un método de una clase base:
Seleccione el tipo en el que deben añadirse los métodos e invoque Fuente > Alterar temporalmente / Implementar métodos. Así se abre un diálogo que le permite elegir qué métodos se alterarán temporalmente.

Diálogo 'Alterar temporalmente / Implementar método'

Crear un tipo a partir de un fragmento de código de ejemplo
Novedad en 3.2
Puede pegar un fragmento de código que contenga un tipo Java directamente en un paquete o una carpeta fuente para crear una unidad de compilación nueva. Por ejemplo, seleccione y copie este código fuente
package pack;
public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello World");
    }
}
a continuación seleccione una carpeta fuente en el Explorador de paquetes, utilice Control+V (Editar > Pegar). Esto crea automáticamente un paquete nuevo llamado 'pack' y un archivo 'HelloWorld.java' con el contenido copiado.
Redenominar en archivo Para hacer rápidamente una redenominación que no exija un análisis completo de las dependencias de otros archivos, utilice la asistencia rápida de 'redenominar en archivo'. En el editor Java, sitúe el cursor en un identificador de una variable, método o tipo y pulse Control+1 (Editar > Arreglo rápido).
El editor pasa a la modalidad de edición enlazada (como las plantillas) y, al cambiar el identificador, cambian simultáneamente todas las demás referencias a esa variable, método o tipo.

Cambiar múltiples identificadores utilizando el arreglo rápido 'Redenominación local'

También puede utilizar el acceso directo Control+2 R. Utilice la página de preferencias Abre la página de preferencias claves General > Claves para configurar accesos directos (en la categoría 'Fuente').
Utilizar un arreglo rápido para manejar las excepciones Ahora resulta fácil manejar las excepciones lanzadas. Las excepciones no manejadas se detectan mientras se teclea y quedan marcadas con una línea de color rojo en el editor.
  • Pulse la bombilla o accione las teclas Control+1 para rodear la llamada con un bloque try catch. Si desea incluir más sentencias en el bloque try, seleccione las sentencias y utilice las acciones Fuente > Rodear con > Bloque try/catch. También puede seleccionar sentencias individuales utilizando Editar > Ampliar selección a y seleccionando Delimitador, Siguiente o Anterior.
  • Si la llamada ya tiene un bloque try que la rodea, el arreglo rápido le sugerirá que añada el bloque catch al bloque existente.
  • Si no desea manejar la excepción, deje que el arreglo rápido añada una excepción lanzada nueva a la declaración de método delimitadora.

Propuestas de arreglos rápidos de 'Excepción no capturada'

En cualquier momento puede convertir un bloque catch en una excepción lanzada. Utilice Control+1 (Editar > Arreglo rápido) en un bloque catch.

Asistencia rápida de 'Sustituir cláusula catch por throws'

Menos tecleo para las asignaciones En lugar de teclear una asignación, empiece por la expresión que se asignará.

Asistencia rápida de 'Asignar sentencia a variable local'

Ahora utilice Control+1 (Editar > Arreglo rápido) y elija 'Asignar sentencia a variable local nueva' y la asistencia rápida determinará automáticamente el nombre de una variable.
Asignación de asistencia rápida
Menos trabajo con las expresiones de conversión de tipo No emplee demasiado tiempo en la conversión de tipos. Haga caso omiso de ellas al principio y utilice la asistencia rápida para añadirlas después de finalizar la sentencia.

Por ejemplo, en las siguientes asignaciones:
Añadir conversión de tipo en asignación
O para los argumentos de método:
Añadir conversión de tipo para argumentos de método
O para los destinos de la llamada a método:
Añadir conversión de tipo en destinos de llamada a método

Asignar una expresión convertida
Después de una comprobación de 'instanceof', es muy frecuente convertir el tipo de la expresión y asignarla a una nueva variable local. Invoque la asistencia rápida (Control+1) en la palabra clave 'instanceof' para no tener que teclear tanto:
Arreglo rápido de 'introducir local nueva con tipo convertido'
Más asistencias rápidas
Mire en la página de asistencias rápidas para obtener una lista completa de las transformaciones de código disponibles. Algunas de ellas son
  • Invertir sentencias if
  • Convertir 'switch' a 'if-else'
  • Sustituir 'if-else' por condicional
    ...y muchas más
Aquí encontrará una lista de arreglos rápidos.
Accesos directos de arreglos rápidos y asistencias rápidas
Algunas de las asistencias rápidas más conocidas, como las de redenominar en archivo y asignar a local, se pueden invocar directamente con las teclas Control+2 R y Control+2 L. Compruebe la página de preferencias Abre la página de preferencias Teclas General > Teclas para acceder a más arreglos rápidos que soporten la invocación directa.

Página de preferencias de teclas con accesos directos de asistencias rápidas

Rodear líneas Para rodear las sentencias con una sentencia if / while / for o con un bloque, seleccione las líneas a rodear e invoque Origen > Rodear con o pulse Alt+Mayús+Z.

Asistencia rápida de 'Rodear con plantillas'

Las entradas del menú se derivan de las plantillas del editor normal: todas las plantillas que contiene la variable ${line_selection} se mostrarán en el menú.

Las plantillas pueden configurarse en la página de preferencias Abre la página de preferencias Plantillas del editor Java > Editor > Plantillas. Edite las plantillas correspondientes para personalizar el código resultante o definir sus propias plantillas para rodear.
Crear plantillas propias Para crear sus propias plantillas, vaya a la página de preferencias Abre la página de preferencias Plantillas del editor Java > Editor > Plantillas y pulse el botón Nuevo para crear una plantilla. Por ejemplo, una plantilla que permita iterar hacia atrás en una matriz tendría este aspecto:

Plantilla para un iterador

La asistencia de contenido puede insertar nombres de argumento automáticamente Puede hacer que la asistencia de contenido inserte los nombres de los argumentos automáticamente al completar un método. Este comportamiento puede personalizarse en la página de preferencias Abre la página de preferencias Asistencia de contenido Java > Editor > Asistencia de contenido (vea el recuadro de selección Rellenar nombres de argumento al concluir.) Por ejemplo, cuando selecciona aquí la segunda entrada,

Ventana Asistencia de contenido

La asistencia de contenido insertará automáticamente los nombres de los argumentos:

Nombres de argumento insertados por la asistencia de contenido

Luego puede utilizar la tecla Tabulador para navegar por los nombres insertados.

La asistencia de contenido también puede determinar nombres de argumentos, basándose en los correspondientes tipos declarados. Esto se puede configurar mediante el recuadro de selección Adivinar nombres de argumento rellenos en la página de preferencias Abre la página de preferencias Asistencia de contenido Java > Editor > Asistencia de contenido.

Insertar automáticamente argumentos de tipo
La habilitación de Rellenar nombres de argumento al concluir en la página Abre la página de preferencias Asistencia de contenido Java > Editor > Asistencia de contenido también es útil al trabajar con tipos parametrizados en J2SE 5.0.
Asistencia de contenido en un tipo parametrizado
se obtiene el resultado:
Argumento de tipo adivinado e insertado por la asistencia de contenido
Eliminar sentencia circundante Para eliminar un bloque o una sentencia circundante, sitúe el cursor en el corchete de apertura o de cierre y pulse las teclas Control+1 (acciones Editar > Arreglo rápido).

Asistencia rápida de 'Eliminar sentencia circundante'

¿Cómo se ha escrito antes esta palabra? Puede habilitar el soporte de ortografía del editor Java en la página de preferencias Abre la página de preferencias Ortografía General > Editores > Editores de texto > Ortografía. Los errores sintácticos se muestran en el editor Java y están disponibles los correspondientes arreglos rápidos:

Ejemplo de propuesta de corrección sintáctica

También puede poner el diccionario a disposición de la asistencia de contenido. No obstante, Eclipse no incluye ningún diccionario actualmente. El formato necesario es simplemente una lista de palabras separadas por nuevas líneas, y los arreglos rápidos le permiten añadir palabras nuevas al diccionario sobre la marcha. Se agradecerán todas las aportaciones que puedan hacerse al diccionario.

Selecciones estructuradas Puede seleccionar rápidamente código Java desde el punto de vista sintáctico mediante la función Selección estructurada.
Resalte el texto y pulse las teclas Alt+Mayús+Flecha arriba o seleccione Editar > Ampliar selección a > Elemento delimitador en la barra de menús; la selección se ampliará hasta el elemento de sintaxis Java más pequeño que contenga la selección. Luego podrá ampliar adicionalmente la selección invocando de nuevo la acción.
Buscar el corchete pareja Para localizar el corchete que hace pareja con uno corchete de apertura o de cierre, seleccione este corchete y pulse las teclas Control+Mayús+P o seleccione Navegar > Ir a > Corchete emparejado. También puede pulsar dos veces en un punto situado antes de un corchete de apertura o después de un corchete de cierre: esto hará que se seleccione el texto existente entre los dos corchetes.

Uso de 'pulsar dos veces' para seleccionar el texto situado entre dos paréntesis

Javadoc inteligente Escriba '/**' y pulse Intro. Así se añade automáticamente un apéndice de comentario Javadoc que contiene los códigos @param, @return y @exception estándar.

Resultado de 'Javadoc inteligente'

Las plantillas del nuevo comentario se pueden configurar en la página de preferencias Abre la página de preferencias Plantillas de código Java > Estilo de código > Plantillas de código.
Mostrar fuente solo del elemento seleccionado Pulse el botón de la barra de herramientas Mostrar fuente solo del elemento seleccionado Mostrar fuente solo del elemento seleccionado para obtener una vista segmentada de la unidad de compilación. Cuando está habilitado, el editor Java solo muestra el elemento (por ejemplo, un método) seleccionado en las vistas Esquema o Jerarquía. Cuando está inhabilitado, el editor muestra toda la unidad de compilación.
Utilizar el historial local para revertir a la edición anterior de un método Siempre que edita un archivo, los contenidos anteriores se conservan en el historial local. Las herramientas Java hacen que el historial local esté disponible para los elementos Java, lo que le permite revertir a una edición anterior de un método individual, en lugar de revertir al archivo completo.

Seleccione un elemento (p.ej. en la vista Esquema) y utilice la opción Sustituir por > Historial local para revertir a una edición anterior del elemento.

Diálogo Sustituir por historial local

Utilizar el historial local para restaurar métodos eliminados Siempre que edita un archivo, los contenidos anteriores se conservan en el historial local. Las herramientas Java hacen que el historial local esté disponible para los elementos Java, lo que le permite restaurar selectivamente los métodos suprimidos.

Seleccione un contenedor (p.ej. en la vista Esquema) y utilice la opción Restaurar a partir de historial local para restaurar miembros que se hayan eliminado.

Diálogo Restaurar a partir de historial local

Generación de código personalizable La página de preferencias Abre la página de preferencias Plantillas de código Java > Estilo de código > Plantillas de código permite personalizar código generado y comentarios de la misma forma que las plantillas normales. Estas plantillas de código se emplean siempre que se genera código.

Página de preferencias Plantillas de código

A partir de la 3.1, es posible utilizar plantillas de código específicas, que el equipo también podrá compartir si el proyecto es compartido. Abra Propiedades en el proyecto para habilitar los valores específicos del proyecto.
Crear comentarios en el código Los comentarios se pueden añadir explícitamente con Fuente > Generar comentario de elemento (Alt+Mayús+J), pero también se pueden añadir automáticamente mediante diversos asistentes, refactorizaciones o arreglos rápidos.
Configure las plantillas de código en la página de preferencias Abre la página de preferencias Plantillas de código Java > Estilo de código > Plantillas de código.
Habilite o inhabilite la generación automática de comentarios, ya sea directamente en el asistente (por ejemplo, con el recuadro de selección 'Generar comentario' en los asistentes de tipo Java nuevos) o con 'Añadir comentarios automáticamente para métodos y tipos nuevos' en la página de preferencias Abre la página de preferencias Estilo de código Java > Estilo de código.
Todos estos valores también se pueden configurar para cada proyecto. Abra Propiedades en el proyecto para habilitar los valores específicos del proyecto.
Ordenar miembros Puede ordenar miembros de una unidad de compilación Java según el orden de categoría definido en la página de preferencias Abre la página de preferencias Orden de clasificación de miembrosalt=" Java > Aspecto > Orden de clasificación de miembros.
Encontrará la acción bajo Fuente > Ordenar miembros.
Acomodar series Puede hacer que los literales de tipo serie se acomoden cuando los edita. Por ejemplo, supongamos que tiene código como el siguiente:
String message= "Este es un mensaje muy largo.";

Sitúe el cursor después de la palabra "muy" y pulse Intro. El código se acomodará automáticamente de esta manera:

String message= "Este es un mensaje" + 
           " muy largo";

Este comportamiento puede personalizarse en la página de preferencias Abre la página de preferencias Tecleo Java > Editor > Tecleo.

Tecleo inteligente y cómo controlarlo Las funciones de tecleo inteligente del editor Java facilitan el trabajo diario. Puede configurarlas en la página de preferencias Abre la página de preferencias Tecleo Java > Editor > Tecleo.

Página de preferencias Teclear

Si se habilita la opción Insertar automáticamente los punto y coma en la posición correcta y se teclea un punto y coma, el cursor se sitúa automáticamente al final de la sentencia antes de insertar el punto y coma. Así se ahorra la navegación adicional del cursor.
Puede deshacer esta colocación automática pulsando la tecla de retroceso inmediatamente después.

Arreglar el sangrado del código con una sola pulsación Una característica de utilidad es Fuente > Corregir sangrado o Control+I.
Seleccione el código en el que los sangrados sean incorrectos e invoque la acción.

Si no hay nada seleccionado, la acción sangra la línea actual.

Menús rápidos para las acciones de fuente y refactorización Se puede acceder a las acciones de refactorización y fuente mediante un menú rápido. Seleccione el elemento que hay que manipular en el editor Java o en una vista Java y pulse las teclas Alt+Mayús+S para obtener el menú fuente rápido y las teclas Alt+Mayús+T para obtener el menú rápido de refactorización y Alt+Shift+Z para el menú de rodear con.

Menú rápido de refactorización

Buscar código no utilizado El compilador Java detecta código inaccesible, variables, parámetros e importaciones que no se utilizan, tipos, métodos y campos privados no utilizados. El valor está en la página de preferencias Abre la página de preferencias Error/Avisos Java > Compilador > Error/Avisos (en el caso de un proyecto individual, utilice Proyecto > Propiedades > Compilador Java > Error/Avisos).

Página de preferencias de compilador

Estos valores también se detectan mientras se teclea, y se ofrece un arreglo rápido para eliminar el código innecesario.
Manejo de los comentarios Javadoc El compilador Java de Eclipse puede procesar comentarios Javadoc. Los informes de búsqueda hacen referencia a los comentarios de documentación, y la refactorización también actualiza estas referencias. Esta característica se controla desde la página de preferencias Abre la página de preferencias de problemas de Javadoc Java > Compilador > Javadoc (en el caso de un proyecto individual, utilice Proyecto > Propiedades > Compilador Java > Javadoc).

Página de preferencias Javadoc

Cuando está activada, los comentarios Javadoc mal formados se marcan en el editor Java y se pueden arreglar con Editar > Arreglo rápido (Control+1):

Problemas detectados en Javadoc

Suprimir avisos En J2SE 5.0 y versiones posteriores se pueden suprimir todos los avisos opcionales del compilador con la anotación SuppressWarnings.
En este ejemplo, addAll() está marcado como método no utilizado. Se emplea Arreglo rápido (Control+1) para añadir una anotación SuppressWarnings y así no se mostrará el aviso para este método.
Arreglo rápido para añadir la anotación SuppressWarning
Asistente Limpiar
Novedad en 3.2
El Asistente Limpiar ayuda a arreglar varios problemas a la vez y a establecer un estilo de código.
Por ejemplo, puede:
  • convertir bucles for en bucles for mejorados cuando sea posible.
  • marcar todos métodos de alteración temporal de todo un proyecto con una anotación @Override.
El asistente también resulta útil para convertir código compatible de Java 1.4 en Java 5.0.

Imagen del asistente Limpiar

Seleccione un proyecto, paquete o archivo y utilice Fuente > Limpiar... para iniciar este asistente.

Refactorización

Creación de scripts de refactorizaciones
Novedad en 3.2
La mayoría de refactorizaciones ofrecidas por JDT no solo pueden ejecutarse interactivamente sino también mediante un script de refactorización.

Cree un script de refactorización a partir del historial de refactorizaciones utilizando Refactorizar > Crear script....

Un script de refactorización puede aplicarse posteriormente sobre un espacio de trabajo arbitrario utilizando Refactorizar > Aplicar script....

Tales scripts de refactorización pueden utilizarse en diferentes casos como por ejemplo el arreglo automático de cambios de API de ruptura entre capas de software o para proporcionar parches con semántica enriquecida.
Migración de archivos JAR segura
Novedad en 3.2
Cuando se exporta un archivo JAR desde el espacio de trabajo, el asistente Exportación de JAR ofrece la opción de incluir información de refactorización en el archivo JAR.

Utilice Archivo > Exportar... y seleccione Archivo JAR. En la primera página del asistente Exportar JAR, seleccione Exportar refactorizaciones para proyectos marcados. Pulse el enlace para seleccionar las refactorizaciones a incluir.

Los clientes pueden entonces migrar una versión antigua del archivo JAR a un nueva utilizando la refactorización Refactorizar > Migrar archivo JAR.... Esta refactorización actualiza automáticamente todo el código dependiente de la versión antigua del archivo JAR para que utilice la versión nueva del archivo JAR.

Buscar

Localizar variables y su acceso de lectura/escritura Puede localizar las variables y ver su estado de lectura/escritura si selecciona un identificador (referencia o declaración de variable, método o tipo) e invoca Buscar > Apariciones en archivo. Así se marcan todas las referencias de este identificador en el mismo archivo. Los resultados también se muestran en la vista Buscar, junto con iconos que indican el acceso de lectura o escritura de la variable.

Accesos de lectura y escritura de un campo

Otra posibilidad consiste en utilizar la característica Marcar apariciones para que las apariciones queden resaltadas dinámicamente. Puede buscar en varios archivos si utiliza las funciones de búsqueda general (Buscar > Referencias).

Buscar métodos que tengan un tipo de retorno concreto Para buscar los métodos que tengan un tipo de retorno concreto, utilice "* <tipo de retorno>", de esta manera:
  • Abra el diálogo de búsqueda y pulse la pestaña Búsqueda Java.
  • Teclee '*' y el tipo de retorno, dejando un espacio entre ellos, en el campo Serie de búsqueda.
  • Marque el recuadro de selección Sensible a mayúsculas/minúsculas.
  • Seleccione Método y Declaraciones y pulse Buscar.

Buscar método con un tipo de retorno dado

Filtrar coincidencias de búsqueda en Javadoc Por omisión, Búsqueda Java busca referencias en el interior del código Java y de Javadoc. Si desea ver las referencias dentro de Javadoc, puede filtrar estas coincidencias habilitando 'Filtrar Javadoc' en el menú de vista (símbolo de triángulo) de la vista de búsqueda
Filtrar coincidencias de búsqueda potenciales Las coincidencias potenciales se producen cuando un problema de tiempo de ejecución impide que el motor de búsqueda resuelva completamente la coincidencia. Filtre estas coincidencias con Filtrar potenciales en el menú de vista de búsqueda (símbolo de triángulo.)
Rastrear cadenas de llamadas a método con la jerarquía de llamadas Utilice la función de jerarquía de llamadas para seguir largas o complejas cadenas de llamadas sin perder el contexto original: basta con seleccionar un método e invocar Navegar > Abrir jerarquía de llamadas (Control+Alt+H).

Vista Jerarquía de llamadas

Navegación por el código y lectura

Abrir en una selección en el editor Java Hay dos maneras de abrir un elemento a partir de una referencia en el editor Java.
  • Seleccione la referencia en el código y pulse F3 (Navegar > Abrir declaración).
  • Pulse la tecla Control y, sin soltarla, mueva el puntero del ratón sobre la referencia y pulse el hiperenlace
Navegación de estilo de hiperenlace
La navegación de estilo hiperenlace puede configurarse con el recuadro de selección Soportar navegación de estilo hiperenlace en la página de preferencias Abre la página de preferencias de editores de texto General > Editores > Editores de texto.
Esquemas in situ Pulse las teclas Control+F3 en el editor Java para que se abra un esquema in situ del elemento situado en la posición actual del cursor. O bien pulse Control+O (Navegar > Esquema rápido) para abrir un esquema in situ del archivo fuente actual.

Esquema in situ

Los esquemas in situ muestran los miembros heredados Vuelva a pulsar Control+O o Control+F3 para añadir miembros heredados a un esquema in situ abierto. Los miembros heredados tienen una etiqueta de color gris. Puede filtrar y ordenar el esquema con el menú situado en la esquina superior derecha.

Vista Esquema rápido

Jerarquía in situ Puede buscar los posibles receptores de una llamada virtual mediante la Jerarquía de tipos rápida. Sitúe el cursor dentro de la llamada a método y pulse Control+T (Navegar > Jerarquía de tipos rápida). La vista muestra con un icono completo todos los tipos que implementan el método.

Vista Jerarquía rápida

Pulse Intro para abrir el método correspondiente en un editor. Vuelva a pulsar Control+T para pasar a la jerarquía de supertipo.

Resaltado avanzado El editor Java puede resaltar código fuente según su semántica (por ejemplo: campos estáticos, variables locales, invocaciones a métodos estáticos). Examine las diversas opciones en la página de preferencias Abre la página de preferencias Coloreado de sintaxis Java > Editor > Coloreado de sintaxis.

Ejemplo de resaltado avanzado

Regiones inicialmente plegadas Puede especificar qué regiones están plegadas por omisión en el momento de abrir un editor. Vaya a la página de preferencias Abre la página de preferencias Repliegue Java > Editor > Repliegue para personalizar esto.

Página de preferencias de repliegue

Marcar apariciones Al trabajar con el editor, active Marcar apariciones en la barra de herramientas (Imagen del botón Marcar apariciones, en la barra de herramientas ) o pulse Alt+Mayús+O. Verá los lugares de un archivo en los que se hace referencia a una variable, a un método o a un tipo.
Editor que marca las apariciones de 'info'
La selección de un tipo de retorno muestra los puntos de salida del método. Seleccione una excepción para ver el lugar en que se lanza.
Editor que marca salidas de método
Seleccione una superclase o una superinterfaz para ver los métodos que alteran temporalmente o implementan un método del supertipo seleccionado.
Ajuste 'marcar apariciones' en la página de preferencias Abre la página Marcar apariciones Java > Editor > Marcar apariciones.
Cambie el color para marcar en la página de preferencias Abre la página Anotaciones General > Editores > Editores de texto > Anotaciones.
Ir a método siguiente / anterior Para navegar rápidamente al método o campo siguiente o anterior, utilice:
Control+Mayús+Flecha arriba (Navegar > Ir a > Miembro anterior) o bien Control+Mayús+Flecha abajo (Navegar > Ir a > Miembro siguiente).
Controlar la navegación entre anotaciones Utilice los botones Anotación siguiente / anterior, en la barra de herramientas, o las opciones Navegar > Anotación siguiente (Control+.) y Navegar > Anotación anterior (Control+,) para navegar entre las anotaciones en un archivo fuente Java. Con los menús desplegables de los botones, podrá configurar en qué anotaciones desea detener la navegación:

Desplegable de anotación siguiente / anterior

Recordatorios en el código Java Cuando señala un comentario de código fuente Java con el código "TODO", el compilador Java crea automáticamente la correspondiente tarea como recordatorio. Cuando abra la tarea, navegará hasta la señal "TODO" en el código. Utilice la página de preferencias Abre la página de tareas a realizar Java > Compilador > Códigos de tarea para configurar otros códigos especiales (como el de "FIXME") cuya pista desee seguir en la lista de tareas.

Códigos de tarea en las vistas de editor y tarea

Sugerencias para el diálogo Abrir tipo
El diálogo Abrir tipo (Navegar > Abrir tipo o el botón de la barra de tareas) le ayuda a navegar a un tipo por su nombre.
  • Para localizar rápidamente los tipos, basta con que teclee las letras capitales del nombre del tipo: IOOBE localiza IndexOutOfBoundsException
  • Para ver todos los tipos que acaban en un sufijo dado, por ejemplo, todos los tipos Tests, utilice *Test< y así no se mostrarán los tipos que contengan Test en otra parte del nombre.
Diálogo Abrir tipo con coincidencias CamelCase
Convertir las ayudas flotantes en fijas Puede abrir el texto de una ayuda flotante en una ventana desplazable si pulsa F2 (Editar > Mostrar descripción de ayuda flotante. El contenido de esta ventana se puede seleccionar y copiar.

Ventana con el contenido de la ayuda flotante

Las ayudas flotantes en el editor Java Puede ver distintas ayudas flotantes en el editor Java, utilizando las teclas de modificador (Mayús, Control, Alt).
Cuando mueve el puntero del ratón por encima de un identificador en el editor Java, se muestra por omisión una ayuda flotante con el Javadoc extraído del correspondiente fuente de este elemento. Si mantiene pulsada la tecla Control, se muestra el código fuente.

Ayuda flotante que muestra el código del elemento en la ayuda flotante

Puede cambiar este comportamiento y definir las ayudas flotantes de otras teclas modificadoras en la página de preferencias Abre la página Ayudas flotantes Java > Editor > Ayudas flotantes.
Signatura inferida de método genérico
Puede utilizar la ayuda flotante para mostrar la signatura inferida de un método genérico.

Ayuda flotante que muestra la signatura inferida del método genérico

Abrir y configurar documentación de Javadoc externo Si desea abrir la documentación de Javadoc de un tipo, método o campo con las teclas Mayús+F2 (acciones Navegar > Abrir Javadoc externo), primero tendrá que especificar las ubicaciones de la documentación en la biblioteca padre (archivo JAR, carpeta de clase) o en el proyecto (carpeta fuente) del elemento.
En el caso de las bibliotecas, abra la página de vía de construcción (Proyecto > Propiedades > Vía de construcción Java), vaya a Bibliotecas y expanda el nodo de la biblioteca, donde podrá editar el nodo 'Ubicación de Javadoc'. La documentación puede ser local de su sistema de archivos en una carpeta, de un archivador o de un servidor Web.

Configuración de la ubicación de Javadoc en el diálogo de vía de construcción Java

En el caso de los tipos, métodos o campos de las carpetas fuente, vaya a la página Proyecto > Propiedades > Ubicación de Javadoc.

Vistas Java

Organizar un espacio de trabajo con muchos proyectos Utilice Elementos de nivel superior > Conjuntos de trabajo en el menú de la vista Explorador de paquetes para habilitar una nueva modalidad que muestra los conjuntos de trabajo como elementos de nivel superior. Esta modalidad hace que sea mucho más fácil gestionar los espacios de trabajo que contengan grandes cantidades de proyectos.

Explorador de paquetes en modalidad de conjuntos de trabajo

Utilice Configurar conjuntos de trabajo en el menú de la vista Explorador de paquetes para configurar qué conjuntos de trabajo se deben mostrar. El diálogo le permite crear nuevos conjuntos de trabajo Java, definir qué conjuntos de trabajo se muestran y en qué orden. Los conjuntos de trabajo también se pueden reorganizar directamente en el Explorador de paquetes con la técnica de arrastrar y soltar y la de copiar y pegar.

Vista Declaración La vista Declaración ( Abre la vista Declaración Java Ventana > Mostrar vista > Otras... > Java > Declaración) muestra el código fuente del elemento seleccionado en el editor Java o en una vista Java.

Vista Declaración

Vista Javadoc Hay una vista Javadoc ( Abre la vista Javadoc Ventana > Mostrar vista > Otras... > Java > Javadoc) que muestra el Javadoc del elemento seleccionado en el editor Java o en una vista Java. La vista Javadoc utiliza el control Browser de SWT para mostrar HTML en las plataformas que lo soportan.

Vista Javadoc

La vista Jerarquía de tipos y las implementaciones / definiciones de método Para averiguar qué tipos de una jerarquía alteran temporalmente un método, utilice la característica 'Mostrar miembros en jerarquía'.
  • Seleccione el método que desea ver y pulse F4 (Navegar > Abrir jerarquía de tipos). Así se abre la vista Jerarquía de tipos en el tipo declarante del método.
  • Teniendo seleccionado el método en la vista Jerarquía, pulse el botón 'Bloquear vista y mostrar miembros en jerarquía' de la barra de herramientas.
  • Ahora la vista Jerarquía solo muestra los tipos que implementan o definen el método 'bloqueado'. Por ejemplo, podrá ver que el método isEmpty() está definido en List e implementado en ArrayList y Vector pero no en AbstractList.

Bloquear vista y mostrar miembros en Jerarquía

La vista Jerarquía de tipos permite agrupar según el tipo definidor La vista de métodos de la jerarquía de tipos le permite ordenar los métodos del tipo seleccionado según los tipos definidores. Por ejemplo, en el caso de AbstractList, podrá ver que contiene métodos que se definieron en Object, Collection y List:

Ordenar miembros por el tipo definidor en la jerarquía de tipos

Sugerencias para la jerarquía de tipos
  • En la jerarquía de tipos, céntrese en un tipo nuevo pulsando F4 (Navegar > Abrir jerarquía de tipos) sobre un elemento o un nombre seleccionado.
  • Puede abrir la vista Jerarquía no solo en los tipos, sino también en los paquetes, carpetas fuente, archivadores JAR y proyectos Java.
  • Puede arrastrar un elemento y soltarlo en la vista Jerarquía para centrarla en ese elemento.
  • Puede cambiar la orientación (para que pase de ser vertical (valor predeterminado) a ser horizontal) de la vista Jerarquía mediante el menú de la barra de herramientas de la vista.
Comparación estructural de fuente Java En una comparación estructural del fuente Java, no se tiene en cuenta el orden de los elementos Java (como los métodos y los campos) en el texto, sino que se muestra de manera más clara qué elementos han cambiado, se han añadido o han sido eliminados.
Para iniciar una comparación estructural de archivos Java, dispone de dos opciones:
  • Seleccione dos unidades de compilación Java y elija Comparar con > Entre sí en el menú contextual de la vista. Si los archivos presentan diferencias, se abrirán en un editor de comparación. El panel superior muestra los elementos Java que difieren; si pulsa dos veces en uno de ellos, verá el fuente del elemento en el panel inferior.
  • En un contexto que implique una comparación de archivos (por ejemplo, en una sincronización de CVS), si pulsa dos veces en un archivo Java, no solo verá el contenido del archivo en un visor de comparación de texto, sino que además se realizará una comparación estructural cuyos resultados se verán en un panel nuevo.

Comparación estructural de fuente Java

Cuando realiza una comparación estructural, incluso puede hacer caso omiso de los cambios existentes en los comentarios y en el formateo: active la opción Ignorar espacio en blanco mediante el botón de la barra de herramientas del editor de comparación o mediante el menú desplegable de la vista Sincronización de CVS.
Comparación estructural de archivos de propiedades En una comparación estructural de archivos de propiedades Java (cuya extensión es .properties) no se tiene en cuenta el orden de las propiedades en el texto, sino que se muestra qué propiedades han cambiado, se han añadido o han sido eliminadas.
Para iniciar una comparación estructural de archivos de propiedades, dispone de dos opciones:
  • Seleccione dos archivos en el Explorador de paquetes o en la vista Navegador y elija Comparar con > Entre sí en el menú contextual de la vista.
  • En un contexto que implique una comparación de archivos (por ejemplo, en una sincronización de CVS), si pulsa dos veces en un archivo de propiedades, no solo verá el contenido del archivo en un visor de comparación de texto, sino que además se realizará una comparación estructural cuyos resultados se verán en un panel nuevo.

Comparación estructural de archivos de propiedades

La presentación jerárquica de paquetes frente a la plana En el menú de la vista Paquetes (y en el de la vista Explorador de paquetes) hay una opción que le permite cambiar la manera de visualizar los paquetes. El valor Presentación de paquetes > Jerárquica visualiza los paquetes en un árbol, en el que los subpaquetes se sitúan más abajo que los paquetes; el valor Presentación de paquetes > Plana los visualiza en una disposición estándar de lista plana, en la que todos los paquetes y subpaquetes son hermanos.
Diseño de paquetes plano Diseño de paquetes jerárquico
Paquetes lógicos La vista Paquetes Java (perspectiva Examen Java) une los paquetes que tienen un mismo nombre en las carpetas fuente de un proyecto. La captura de pantalla muestra la vista Paquetes con un paquete lógico.

Perspectiva Examen Java mostrando un paquete lógico

Comprimir nombres de paquete Si los nombres de sus paquetes son muy largos, puede configurar que los visores muestren un nombre comprimido. La configuración del patrón de compresión se hace en la página de preferencias Abre la página de preferencias Aspecto Java > Aspecto.

Configuración de patrones de compresión en la página de preferencias Aspecto Java

Según este ejemplo, los paquetes vienen representados de la siguiente manera:

Nombres de paquete comprimidos

Manipular la vía de acceso de construcción Java directamente en el Explorador de paquetes En lugar de manipular la vía de construcción Java en Proyecto > Propiedades > Vía de construcción Java, utilice las acciones del menú contextual del Explorador de paquetes.
Por ejemplo, puede añadir nuevas carpetas fuente, nuevos archivados y nuevas bibliotecas a la vía de construcción o bien incluir y excluir archivos y carpetas en una carpeta fuente.

Menú de contexto de vía de acceso de construcción

Agrupar problemas de Java
Novedad en 3.2
Configure la vista Problemas para agrupar problemas Java en categorías con Agrupar por > Tipo de problema Java en el menú de vista.

Imagen de la vista Problemas con problemas agrupados

Puede controlar si un error configurable puede ser muy grave o no en la página de preferencias Abre la página de preferencias Construcción Java > Compilador > Construcción.
Indicador de tipo Java
Novedad en 3.2
Habilite el Indicador de tipo Java en la página de preferencias Abre la página de preferencias Decoración de etiqueta General > Aspecto > Decoración de etiqueta para averiguar cuál es el primer tipo de una unidad de compilación o archivo de clase. Para interfaces, anotaciones y enumeraciones se muestra un adorno, mientras que una clase ordinaria no tiene decoración.

Imagen del decorador de etiqueta del indicador de tipo Java

Varios

Preferencias específicas del proyecto Todas las opciones de estilo de código y del compilador se pueden definir para cada proyecto.
Abra las páginas de propiedades del proyecto con Proyecto > Propiedades en un proyecto o utilice el enlace en las preferencias del espacio de trabajo (por ejemplo la página de preferencias Abre la página de preferencias Estilo de código Java > Estilo de código) para abrir una página de propiedades de proyecto y habilitar los valores específicos del proyecto.

Página de propiedades del proyecto con el recuadro de selección 'Habilitar valores específicos del proyecto'

Los valores específicos del proyecto se almacenan en un archivo de configuración dentro del proyecto (en la carpeta '.settings'). Cuando se comparte un proyecto con un equipo, los miembros del equipo también obtendrán estos valores específicos del proyecto.
Reglas de acceso
Las reglas de acceso proporcionan la posibilidad de poner en vigor reglas de API para los tipos desde las bibliotecas con referencias. En la página de vía de construcción Java (Proyecto > Propiedades > Vía de construcción Java), edite el nodo 'Reglas de acceso', disponible en los proyectos, archivadores, carpetas de clases y bibliotecas con referencias.
Los paquetes o tipos que hay en estas referencias se pueden clasificar como:
  • Accesible
  • Inconveniente
  • Prohibido
En función de los valores de la página de preferencias Abre la página de preferencias Error/Avisos Java > Compilador > Errores/Avisos, el compilador marcará las referencias inconvenientes y prohibidas con avisos o errores.

Diálogo de configuración de reglas de acceso

JUnit Seleccione un método de prueba JUnit en una vista y elija Ejecutar > Prueba JUnit en el menú contextual o Ejecutar > Ejecutar como > Prueba JUnit en el menú principal. Así se crea una configuración de lanzamiento para ejecutar la prueba seleccionada.
Ocultar la vista JUnit hasta que se produzcan errores o anomalías Puede configurar la vista JUnit para que se abra solamente cuando haya errores o anomalías. De esa manera, puede establecerla como vista rápida y no consultarla mientras no hayan pruebas fallidas. Si no se producen problemas en sus pruebas, verá el icono Se está ejecutando satisfactoriamente (el número de pequeños cuadrados de color verde irá aumentando para indicar cómo avanza el proceso) mientras las esté ejecutando y el icono Finalizado satisfactoriamente una vez que hayan finalizado. Sin embargo, si se producen errores o anomalías, el icono pasará a ser Se produjo una anomalía o un error (o Ha finalizado con anomalía o error si las pruebas han finalizado) y aparecerá la vista JUnit.
La asistencia de contenido en los campos de diálogo Ahora, la asistencia de contenido (Control+Barra espaciadora) también está disponible en los campos de entrada de diversos diálogos de Java. Se indican con un icono en forma de pequeña bombilla junto al campo, cuando este recibe el foco.

Diálogo Clase nueva

Posicionamiento de cursor inteligente en diálogos que muestran nombres Java
Novedad en 3.2
Los campos de texto para editar nombres Java soportan el posicionamiento de cursor inteligente. Utilice Control+Izquierda y Control+Derecha para detenerse en los límites de la concatenación por mayúsculas dentro de un nombre. Utilice Control+Mayús+Izquierda y Control+Mayús+Derecha para ampliar la selección en pasos pequeños. Utilice Control+Suprimir para suprimir la parte siguiente y Control+Retroceso para suprimir la parte anterior de un nombre.

Posicionamiento de cursor inteligente en el diálogo
Control+Derecha:
Posicionamiento de cursor inteligente
Control+Mayús+Derecha:
Posicionamiento de cursor inteligente en el diálogo
escribir "Igual":
Posicionamiento de cursor inteligente en el diálogo
Control+Suprimir:
Posicionamiento de cursor inteligente en el diálogo
escribir "A:
Posicionamiento de cursor inteligente en el diálogo
Definir prefijos o sufijos para los campos, parámetros y variables locales Puede configurar el prefijo o el sufijo de los campos, los campos estáticos, los parámetros y las variables locales. Estos valores de la página de preferencias Abre la página de preferencias Estilo de código Java > Estilo de código se emplean en la asistencia de contenido, en los arreglos rápidos y en la refactorización siempre que se calcula el nombre de una variable.

Convenios de nombres en la página de preferencias de estilo de código

La acción Organizar importaciones funciona en más que archivos individuales Puede invocar la acción Origen > Organizar importaciones en los conjuntos de unidades de compilación, paquetes, carpetas fuente o proyectos Java.
Formatear más de un archivo Seleccione todos los archivos Java que hay que formatear y elija Fuente > Formatear para formatearlos todos. La acción de formatear también está disponible en paquetes, carpetas fuente o proyectos Java.
Utilizar un JRE concreto para un proyecto Al crear proyectos nuevos, el JRE que se añade de forma predeterminada es el seleccionado en la página de preferencias Abre la página de preferencias JRE instalados Java > JRE instalados. Para establecer un JRE específico del proyecto, abra la página de propiedades de la vía de construcción Java del proyecto (Proyecto > Propiedades > Vía de construcción Java), a continuación la página Bibliotecas, seleccione la biblioteca del sistema de JRE ('JRE System Library') y pulse Editar. En el diálogo 'Editar biblioteca', puede seleccionar el JRE predeterminado, un JRE específico del proyecto o un Entorno de ejecución que se añadirá a proyectos nuevos.

Editar biblioteca del sistema de JRE

Utilizar arrastrar y soltar Arrastrar y soltar es una sustitución de Editar > Cortar y Editar > Pegar respecto a Editar > Copiar y Editar > Pegar. Mantenga pulsada la tecla Control mientras arrastra para cambiar de mover a copiar.

Información importante:

  • El movimiento de unidades de compilación Java entre paquetes utilizando la técnica de arrastrar y soltar tendrá el mismo comportamiento que un movimiento de refactorización: todas las importaciones faltantes se añadirán y se actualizarán las referencias
  • Al arrastrar y soltar elementos de código fuente como tipos o métodos, solo se copiará o se moverá el código fuente correspondiente: no se actualizarán referencias
Propagar el código de obsolescencia El compilador Java se puede configurar para que diagnostique la obsolescencia, utilizando las opciones de la página de preferencias Abre la página de preferencias Errores/Avisos Java > Compilador > Errores/Avisos.

Página de preferencias de compilador

Al utilizar esta configuración, el resultado es el siguiente:

I.java

X.java

Y.java

Si no puede arreglar una utilización de una construcción obsoleta, le recomendamos que marque el método, campo o tipo delimitador con el código de obsoleto. De este modo, sabrá con certeza que alteró temporalmente una construcción obsoleta y que el código de obsolescencia se propaga a las dependencias.

X.java

Y.java

Recuperación de las incoherencias anormales En el raro caso de una disfunción, JDT puede poner de manifiesto algunas incoherencias como, por ejemplo:
  • faltan resultados en una Búsqueda Java o Abrir tipo
  • elementos no válidos en el explorador de paquetes

Para que JDT vuelva a estar en un estado coherente, deberán realizarse las siguientes acciones en este orden exacto:
  1. Cerrar todos los proyectos utilizando la acción Cerrar proyecto del menú
  2. Salir de Eclipse y reiniciarlo
  3. Abrir todos los proyectos utilizando la acción Abrir proyecto del menú
  4. Desencadenar manualmente una construcción nueva de todo el espacio de trabajo (Proyecto > Limpiar...)

Depurar

Lanzamiento desde el menú contextual

Las aplicaciones Java se pueden ejecutar y depurar desde el menú contextual. Podrá lanzar un archivo fuente, un paquete, un método, un tipo, etcétera, eligiendo la opción Ejecutar como (o Depurar como) > Aplicación Java en el menú contextual de una vista o un editor. Otra posibilidad es utilizar el enlace de teclas de atajo de lanzamiento de aplicaciones Java (Alt-Mayús-D, J). Las acciones Ejecutar como o Depurar como de nivel superior también se ven afectadas por la selección actual o por el editor activo.

Menú contextual con la opción de lanzamiento

Evaluaciones en el depurador

La evaluación de fragmentos de código está disponible en una serie de lugares del depurador. Al seleccionar Visualizar o Inspeccionar en el menú contextual del editor de la vista Variables se mostrará el resultado en una ventana emergente, cuyo resultado se puede enviar a las vistas Visualizar o Expresiones.

Resultado de una inspección en una ventana emergente

Gestión de vistas en perspectivas distintas a la de depuración

La vista Depurar gestiona automáticamente las vistas relacionadas con la depuración, basándose en la selección de vista (mostrando vistas Java para los marcos de pila Java y vistas C para marcos de pila C, por ejemplo). Por omisión, esta gestión automática de vistas solo se produce en la perspectiva Depuración, pero se puede habilitar en otras perspectivas mediante la página de preferencias Gestión de vistas disponible en el botón desplegable de la barra de herramientas de la vista Depurar.

Variables de entorno

Se puede especificar el entorno que debe utilizarse para lanzar aplicaciones Java en la pestaña Entorno.

Pestaña Entorno en el diálogo de configuración de lanzamiento

Sustituciones de series

Se soportan las variables en muchos parámetros de las configuraciones de lanzamiento de aplicaciones Java. La mayoría de los campos que soportan variables tienen un botón Variables... junto a ellos, como sucede con los campos de argumentos de VM y de programa. El campo Tipo principal también soporta variables; la variable ${nombre_tipo_java} permite crear una configuración que ejecutará el tipo seleccionado.

Pestaña Argumentos en el diálogo de configuración de lanzamiento

Estructuras lógicas

El conmutador Estructuras lógicas de la barra de herramientas de la Vista Variables presenta estructuras alternativas para los tipos comunes. JDT proporciona vistas lógicas para correlaciones, colecciones y composiciones SWT. Puede definir estructuras lógicas para otros tipos desde la página de preferencias Estructuras lógicas.

Vector mostrado como estructura lógica en la vista de variables

Argumentos de VM predeterminados

Si especifica frecuentemente los mismos argumentos para una determinada VM, puede configurar Argumentos de VM predeterminados en la página de preferencias JRE instaladas. Es más cómodo que especificarlos para cada configuración de lanzamiento.

Página de preferencias de JRE donde se han especificado argumentos predeterminados

Detener en main

Puede utilizar la opción Detener en main en una configuración de lanzamiento de aplicación Java para hacer que el programa se detenga en la primera línea ejecutable del método main cuando lo ejecuta en modalidad de depuración.

Pestaña Main con la opción Detener en Main seleccionada

Puntos de interrupción condicionales Puede utilizar puntos de interrupción condicionales en Propiedades de punto de interrupción... para controlar las condiciones que deben darse para que un punto de interrupción pare realmente la ejecución. Puede especificar si desea que el punto de interrupción solo suspenda la ejecución cuando la condición sea verdadera o cuando cambie el valor de la condición.

Editor de condiciones de punto de interrupción en el diálogo de propiedades de puntos de interrupción

Inhabilitar puntos de interrupción

Si se encuentra con que añade y elimina frecuentemente un punto de interrupción en el mismo lugar, plantéese la posibilidad de inhabilitar el punto de interrupción cuando no lo necesita y habilitarlo cuando lo vuelva a necesitar. Esto se puede realizar utilizando Inhabilitar puntos de interrupción en el menú contextual de los puntos de interrupción o quitando la marca del punto de interrupción en la Vista de puntos de interrupción.

También puede inhabilitar temporalmente todos los puntos de interrupción utilizando la acción Omitir todos los puntos de interrupción en la barra de herramientas de la vista Puntos de interrupción. Esto indicará al depurador que omita todos los puntos de interrupción y mantenga su estado actual habilitado.

Acción Inhabilitar puntos de interrupción en el menú contextual de la regla

Cambiar valores de variable

Cuando una hebra queda suspendida en el depurador, podrá cambiar los valores de los primitivos y series Java en la vista Variables. En el menú contextual de la variable, elija Cambiar valor de variable. También puede cambiar el valor tecleando un nuevo valor en el panel Detalles y utilizando la acción Asignar valor del menú contextual (enlace de teclas CONTROL+S).

Cambiar valor de variable desde el panel de detalles

Valores de las variables en la ayuda flotante Cuando una hebra queda suspendida, y se coloca el cursor sobre una variable en el editor Java, el valor de la variable se visualiza como ayuda flotante.

Valor de las variables en la ayuda flotante del editor

Soltar en marco

Cuando recorre el código, tal vez se encuentre con que desea hacer marcha atrás porque ha llegado demasiado lejos o porque ha recorrido lo principal de una línea en la que pensaba recorrerlo todo. En lugar de reiniciar la sesión de depuración, puede utilizar la acción Soltar en marco para retroceder rápidamente al principio de un método. Seleccione el marco de pila correspondiente al método Java en el que desea reiniciar y seleccione Soltar en marco en la barra de herramientas de la vista Depurar o en el menú contextual del marco de pila. El puntero de la instrucción actual se restablecerá en la primera sentencia ejecutable del método. Esto también funciona para los marcos que no sean el superior de la pila.

Tenga en cuenta que la acción Soltar en marco solo está disponible cuando se depura con una VM 1.4 o superior, o con la VM J9. Existen algunas situaciones en las que una JVM no pueda sacar los marcos deseados de la pila. Por ejemplo, generalmente no es posible soltar en el marco inferior de la pila o en cualquier marco por debajo de un método nativo.

Sustitución dinámica de código El depurador da soporte a la sustitución dinámica de código cuando se depura con una VM 1.4 o superior, o con la VM J9. Esta opción le permite realizar cambios en el código mientras lo está depurando. Tenga en cuenta que algunos cambios (como métodos, variables de clase o clases interiores nuevas o suprimidas) no se pueden cargar dinámicamente, en función del soporte que proporcione una determinada JVM.
Recorrer todo en las selecciones

El depurador Java le permite recorrer todo en un solo método de una serie de llamadas a métodos encadenados o anidados. Basta con que resalte el método en el que desea recorrer todo y seleccione Recorrer todo en la selección en el menú contextual del editor Java.

Esta característica funciona en aquellos lugares distintos a la línea que se ejecuta actualmente. Intente depurar hasta un punto de interrupción y recorrer todo en un método unas cuantas líneas por debajo del puntero actual de instrucciones.

Recorrer todo en la selección

Fijar y bloquear consola Los datos de salida visualizados en la consola se pueden bloquear para un proceso concreto por medio de la acción Fijar consola de la barra de herramientas de la vista Consola. También existe una acción Bloquear desplazamiento que no deja que la consola se desplace mientras se añaden nuevos datos de salida.
Crear elementos de observación Llamamos elemento de observación a una expresión de la vista Expresiones cuyo valor se actualiza a medida que prosigue la depuración. Puede crear elementos de observación desde el editor Java, seleccionando para ello una expresión o una variable y eligiendo Observar en el menú contextual o en el menú Ejecutar de nivel superior.
Puntos de observación

Los puntos de observación son puntos de interrupción que suspenden la ejecución siempre que se acceda a un campo especificado o éste sufra modificaciones. Para establecer un punto de observación, seleccione un campo en la vista Esquema y elija Conmutar punto de observación en el menú contextual. Para configurar un punto de observación, selecciónelo en la vista Puntos de interrupción y elija Propiedades... en el menú contextual. Las propiedades más importantes de este tipo de punto de interrupción son las que corresponden a los recuadros de selección Acceso y Modificación, que controlan cuándo puede el punto de interrupción suspender la ejecución.

Diálogo de propiedades de punto de interrupción

Hebras y supervisores

El depurador Java visualiza opcionalmente información en la vista Depurar. Utilice la acción Mostrar supervisores, en el menú desplegable de la vista Depurar, para ver qué hebras retienen bloqueos y cuáles de ellas están en espera de adquirir bloqueos. Las hebras implicadas en un punto muerto vienen representadas de color rojo.

Vista Depurar que muestra ciclos de punto muerto

Filtros de recorrer Los filtros de recorrer impiden que el depurador pueda suspender la ejecución en las clases y paquetes especificados cuando se recorre todo el código. Los filtros de recorrer se establecen con la página de preferencias Abre la página de preferencias Filtrado de recorrer Java > Depurar > Filtrado de recorrer. Cuando el conmutador Utilizar filtros de recorrer (en la barra de herramientas y en el menú de depuración) está activado, los filtros de recorrer se aplican a todas las acciones de recorrer. En la vista Depurar, el paquete o el tipo declarante del marco seleccionado de la pila se puede añadir rápidamente a la lista de filtros, seleccionando Filtrar tipo o Filtrar paquete en el menú contextual del marco de la pila.
Utilizar el cuaderno

Si desea experimentar con una API o probar cómo funciona un nuevo algoritmo, suele ser más fácil utilizar una página del cuaderno Java que crear una clase nueva. Las páginas del cuaderno funcionan a modo de contenedores para los fragmentos de código, que podrá ejecutar en cualquier momento sin un contexto. Para crear una página del cuaderno, cree un archivo nuevo con una extensión .jpage (o utilice el asistente Abre el asistente Cuaderno nuevo Página de cuaderno nueva). Escriba el código que desea ejecutar y luego selecciónelo. Hay tres maneras de ejecutar el código:

  • Ejecutar el código seleccionado y colocar el resultado devuelto en un emergente de inspección
  • Ejecutar el código seleccionado y colocar el resultado de tipo serie directamente en la página del cuaderno

    Página de cuaderno mostrando el resultado

  • Ejecutar el código seleccionado (y hacer caso omiso del resultado que se devuelva)

Estas acciones están en la barra de herramientas del entorno de trabajo y también en el menú contextual de la página del cuaderno.

Editar
configuraciones
de lanzamiento
Si se mantiene pulsada la tecla Control y se realiza una selección en el menú desplegable Ejecutar o Depurar, se abre la configuración de lanzamiento asociada para edición. La configuración de lanzamiento también se puede abrir desde el menú contextual asociado a cualquier elemento de la vista Depurar.
Configuraciones de lanzamiento favoritas

Las configuraciones de lanzamiento figuran en los menús desplegables Ejecutar/Depurar por orden de lanzamiento, empezando por los más recientes. Sin embargo, es posible forzar que una configuración de lanzamiento aparezca siempre en la parte superior de los menús desplegables, convirtiéndola en 'favorita'. Utilice la acción Organizar favoritos... del correspondiente menú desplegable para definir su configuración de lanzamiento favorita.

Formateadores de detalles

En las vistas Variables y Expresiones, el panel de detallas muestra una representación ampliada de la variable seleccionada actualmente. Por omisión, esta representación ampliada es el resultado de llamar al método toString() en el objeto seleccionado, pero podrá crear un formateador de detalles personalizado que deba utilizarse en su lugar, eligiendo para ello Formateador de detalles nuevo en el menú contextual de la variable. Este formateador de detalles se utilizará para todos los objetos del mismo tipo. Puede ver y editar todos los formateadores de detalle en la página de preferencias Abre la página de preferencias Formateadores de detalle Java > Depurar > Formateadores de detalle.

Diálogo Formateador de detalles

Ejecutar código con errores de compilación

Puede ejecutar y depurar código que se haya compilado con errores. La única diferencia que hay entre ejecutar código con errores de compilación o sin ellos es que, si se ejecuta una línea de código en la que hay un error de compilación, se produciría una de estas dos posibilidades:

  • Si se depura mientras la preferencia 'Suspender ejecución al producirse errores de compilación' de la página de preferencias Abre la página de preferencias Depurar Java > Depurar está establecida, la sesión de depuración se suspenderá igual que si se hubiera encontrado un punto de interrupción. Observe que si la sustitución dinámica de código está soportada en su máquina virtual, podría arreglar el error de compilación y reanudar la depuración.
  • En caso contrario, la ejecución se terminará con un error de 'compilación no resuelta'.

Es importante recalcar que, mientras el procedimiento de ejecución evite las líneas de código que tengan errores de compilación, podrá ejecutar y depurar como de costumbre.

Acomodación de palabras en la vista Variables El área de detalles de las vistas Variables y Expresiones del depurador permiten acomodar las palabras, opción disponible en el menú desplegable de la vista.

Acción Acomodar palabras en el menú desplegable de la vista Variables

La asistencia de código en el depurador

La asistencia de código, además de estar disponible cuando se escribe código en el editor Java, también lo está en muchos otros contextos:

  • Al entrar una condición de punto de interrupción
  • En el panel Detalles de la vista Variables y Expresiones
  • Al entrar un fragmento de código de formateador de detalles
  • Al entrar un fragmento de código de estructura lógica
  • Al entrar código en una página del cuaderno
  • En la vista Visualizar
Detalles de la línea de mandatos Siempre podrá ver la línea de mandatos exacta utilizada para lanzar un programa en modalidad de ejecución o depuración, seleccionando para ello Propiedades en el menú contextual de un destino de depuración o proceso, incluso si el lanzamiento se ha visto interrumpido.

Detalles de línea de mandatos

Rastreo de la pila
con hiperenlaces

En la consola, los rastreos de pila Java aparecen con hiperenlaces. Al colocar el ratón encima de una línea en un rastreo de pila, el puntero pasa a tener forma de mano. Si se pulsa el botón del ratón, se abre el archivo fuente Java asociado y el cursor se sitúa en la correspondiente línea. Al pulsar el botón del ratón en el nombre de la excepción situada en la parte superior del rastreo de pila se creará un punto de interrupción de excepción.

Rastreos de pila en la vista Consola con hiperenlaces