Java

Java 12

IntelliJ IDEA 2018.3 incluye soporte inicial para Java 12. Previsualice los literales de cadena sin formato (JEP 326 ) en el IDE ahora y saque partido de muchísimas inspecciones útiles y arreglos rápidos. Por ejemplo, convierta literales de cadena de varias líneas en literales de cadena sin formato y viceversa, detecte tildes graves (`) iniciales y finales redundantes, y más. Más información

Lea el aviso legal aquí

Tenga en cuenta que Java 12 todavía no se ha publicado. Debe aceptar los términos del aviso legal de la especificación Java beta para habilitar la compatibilidad para Java 12. La implementación de una especificación en fase de proyecto inicial desarrollada bajo el Java Community Process (JCP) se pone a disposición con fines de prueba y evaluación únicamente y no es compatible con ninguna especificación del JCP.

Detección de más duplicados

IntelliJ IDEA ahora puede detectar rápidamente duplicados incluso en casos más complicados, como cuando los nombres de variable son diferentes. El IDE mostrará duplicados en el visor diff, de modo que pueda comparlos uno al lado del otro.

Mejoras de Java Stream API

El IDE detecta situaciones donde se hacen llamadas ordenadas innecesarias antes de la llamada min posterior. También se proporciona un arreglo rápido para eliminar a la llamada ordenada redundante.

Mejoras de flujo de datos

Hemos creado una nueva inspección basada en flujo de datos llamada Condition is covered by further condition (Condición cubierta por otra condición). Detecta situaciones donde la primera condición es innecesaria puesto que está cubierta por una segunda. El IDE proporciona un arreglo rápido para eliminar tales condiciones redundantes.

Usos redundantes de una inspección suprimida

IntelliJ IDEA ahora detecta usos redundantes de la anotación @SuppressWarning o comentario de línea // noinspection o comentario /** noinspection */ JavaDoc. Cuando una inspección suprimida ya no trata ninguna advertencia en la declaración, clase o cuerpo de método asociados, el IDE no solo le indica una advertencia, sino que también ofrecerá un arreglo rápido para eliminar esos comentarios y anotaciones innecesarios.

Editor

Comentarios multilínea de Pendientes

IntelliJ IDEA 2018.3 ahora admite comentarios de Pendiente multilíneas, ahora la primera línea de comentario de Pendiente y todas las siguientes se destacan en el editor y se enumeran en la ventana de la herramienta TODO. Solo ha de añadir una sangría que empiece en la segunda línea de su comentario multilínea de Pendiente y el IDE lo diferenciará de un comentario normal.

Deshabilitación del formateo de código para archivos y carpetas específicos

Hemos hecho que sea posible excluir ciertos archivos del formateo, la optimización de importación y el reordenamiento de código, en realidad de muchas operaciones donde esté implicado el formateo, ya se explícita o implícitamente. Solo tiene que crear un ámbito y añadir a este cualquier archivo que no deba formatearse.

Nueva barra de estado de indentación

IntelliJ IDEA muestra el tamaño de la sangría en el archivo actual en una nueva barra de estado de indentación. Si la indentación del archivo no coincide con los ajustes actuales de su proyecto, se añadirá un asterisco a la vista de indentación. Ahora puede elegir las acciones que controlan la identación actual en la barrera emergente de la barra de estado.

Mejoras en la compatibilidad de EditorConfig

El IDE ofrece ahora el resaltado de sintaxis y la finalización de código para archivos EditorConfig. También puede emplear la ventana emergente de la nueva barra de estado de indentación para navegar fácilmente al archivo EditorConfig que se está usando.

Control de versiones

Solicitudes de extracción de GitHub

IntelliJ IDEA incluye compatibilidad inicial para solicitudes de extracción de GitHub. Previsualice todas las solicitudes de extracción en su repositorio GitHub de la totalmente nueva ventana de la herramienta de solicitudes de extracción de GitHub. Utilice diff para previsualizar los cambios o crear una rama local a partir de una solicitud de extracción a través del menú contextual, a continuación combínela como una banda habitual.

«History up to Here» (Historial hasta aquí) puede mostrar el historial completo

Anteriormente, la acción History up to Here solo mostraba el historial del archivo hasta la confirmación seleccionada, pero ahora puede mostrar que le ocurrió al archivo después, cambiando a Show All Branches en la barra de herramientas. Esto podría ser especialmente útil si el archivo se borro más tarde, puesto que no es sencillo descubrir cuando ha sucedido esto.

Navegación avanzada en el registro de VCS

Ahora puede usar las acciones de navegación Forward (Avance) y Back (Retroceso) mientras está en el registro de VCS después de navegar desde los hashes de confirmación a la confirmación en la pestaña de registro de VCS o después de usar la acción Go to hash/branch/tag (Ir a hash/rama/etiqueta). Utilice las teclas de flecha a derecha e izquierda para navegar a la confirmación secundaria o primaria.

Ignorar espacios en blanco

Ahora el IDE puede ignorar los cambios de espacios en blanco mientras se combinan. En el cuadro de diálogos Merge Revisions for (Combinar revisiones para), hay un nuevo menú desplegable Ignore (Ignorar) con opciones para ocultar o recortar los cambios de espacios en blanco en la combinación.

Copiado de un archivo de una rama Git a otra

IntelliJ IDEA 2018.3 le permite copiar fácilmente un archivo de una rama Git a otra a través de la nueva y práctica acción Get from Branch (Obtener de la rama) que está disponible desde la pestaña Files (Archivos) del cuadro de diálogo Compare branches (Comparar ramas).

Nombre de rama en el cuadro de diálogo de confirmación

El IDE muestra el nombre de rama para el que está confirmando los archivos, justo dentro del diálogo Commit (Confirmación). Hemos implementado esto para Git, Mercurial y SVN.

Vista previa de diferencias en la pestaña del historial de archivos

Diff Preview (Previsualización de diferencias) está ahora disponible en la pestaña File History (Historial de archivos) de la ventana de herramientas Version Control (Control de versiones).

Compatibilidad con submódulos Git

IntelliJ IDEA 2018.3 es compatible ahora con los submódulos Git. Clone o actualice su proyecto, confirme cambios, vea diferencias y resuelva conflictos.

Buscar y reemplazar

Nueva función Buscar en todas partes

IntelliJ IDEA 2018.3 presenta una manera nueva y mejor de navegar por el proyecto y el IDE. Reciba con una cálida bienvenida a la rediseñada función Search Everywhere (Buscar en todas partes). De hecho, ahora es mucho más que Search Everywhere puesto que incorpora todos los demás diálogos de navegación: Search Everywhere, Find Action, Go to class, Go to file y Go to symbol. Tenga en cuenta que todavía es posible acceder a todos estos diálogos de navegación a través de sus propios accesos directos de teclado, como anteriormente.

Buscar fragmentos multilínea en Find in Path (Encontrar en ruta)

Ahora es posible realizar búsquedas / sustituciones para un fragmento multilínea en los diálogos Find in Path / Replace in Path (Buscar en ruta / Sustituir en ruta). Ya no necesita usar expresiones regulares para realizar una búsqueda multilínea.

Nuevos diálogos de Buscar y sustituir estructural

IntelliJ IDEA 2018.3 proporciona un diálogo actualizado y mejorado Structural Search & Replace (Buscar y sustituir estructural). Ahora el autocompletado funciona en las plantillas predefinidas en el campo de búsqueda. Puede ver el historial de búsqueda en el menú desplegable debajo del icono de búsqueda. La configuración de ámbitos es ahora más sencilla y también más flexible. El complicado formulario Edit Variables se ha sustituido con un panel de filtros, que encontrará en el diálogo actualizado.

Página de preferencias de complementos

Hemos actualizado la página de complementos en Preferences (Settings) para facilitar la gestión, instalación, desinstalación y actualización de complementos. Ahora puede buscar complementos no solo por complementos, sino también por etiquetas. Es incluso mejor, puesto que ahora también puede ordenar los resultados por descargas, nombre, valoración, destacados o actualizaciones.

Run Anything

Run Anything

IntelliJ IDEA 2018.3 ofrece una nueva manera centralizada de ejecutar un comando en el IDE mediante la nueva acción Run Anything action (Doble Ctrl) (Ejecutar todo). Use la nueva acción para lanzar una configuración de ejecución, incluidos Maven y Gradle, ejecute una tarea de Gradle o ejecute comandos de terminal.

Debug Anything (Depurar todo)

Solo ha de presional la tecla Mayús para cambiar el diálogo Run Anything (Ejecutar todo) al modo Debug Anything (Depurar todo).

Kotlin

El complemento Kotlin incluido en el paquete con el IDE se ha actualizado a v1.3.

Compatibilidad con Kotlin 1.3

Hace muy poco, Kotlin tuvo una versión principal para el idioma, las herramientas y bibliotecas. IntelliJ IDEA puede ayudarle a migrar su proyecto Kotlin a Kotlin 1.3 y realizar todos los cambios necesarios en código obsoleto para que cumpla con el estado más reciente de las bibliotecas.

Mejoras en la compatibilidad con proyectos multiplataforma

En Kotlin 1.3, se ha rediseñado completamente el modelo de proyectos multiplataforma para mejorar la expresividad y la flexibilidad y hacer que compartir código común sea más sencillo. IntelliJ IDEA ofrece un conjunto de ejemplos de proyecto que abarcan los casos de uso más habituales.

Nuevas inspecciones y arreglos rápidos en Kotlin

Desde el lanzamiento de IntelliJ IDEA 2018.2, el complemento Kotlin se ha sometido a 30 nuevas inspecciones, arreglos rápidos e intenciones que le ayudan a escribir un código de manera mucho más eficiente.

Spring y Spring Boot

Compatibilidad con Spring Boot 2.1

IntelliJ IDEA 2018.3 fully supports the recently released Spring Boot 2.1. Configuration values annotated with @DataSize are validated using the default @DataSizeUnit, if specified.

Mejoras de Spring Initializr

Ahora, cuando cree un proyecto con Spring Initializr, el IDE sugerirá instalar o habilitar los complementos apropiados para garantizar que existe compatibilidad para todas las tecnologías seleccionadas.

Mejor compatibilidad de JPA y Spring Data para Kotlin

Ahora el IDE puede inyectar automáticamente JPQL en cadenas de consultas, con lo que proporciona finalización para nombres de entidad y parámetros. Puede escribir interfaces Spring Data en Kotlin e IntelliJ IDEA entenderá las entidades que usted use. El IDE proporciona finalización inteligente para nombre de métodos y arreglos rápidos para parámetros.

Accesibilidad

Tema de alto contraste

Nos comprometemos a ofrecer una experiencia fantástica para todos nuestros usuarios. Con IntelliJ IDEA 2018.3, implementamos algunas mejoras importantes en accesibilidad, con el totalmente nuevo tema de alto contraste.

Mejor compatibilidad con lectores de pantalla

Hemos mejorado nuestra compatibilidad con lectores de pantalla, permitiéndoles leer números de líneas, anotaciones VCS, el depurador y nuestros iconos de medianil.

Depurador JVM Debugger

Asociación con procesos Java

Asocie a procesos Java iniciados sin un agente de depuración. Tras asociar a un proceso, podrá ver el estado actual y los valores de variables del subproceso, además de usar la vista Memory.

Si quiere asociar el depurador a los procesos locales, le será muy útil la nueva acción Attach Debugger. La encontrará en la ventana de herramienta Run.

Reinicio automático de escucha de conexiones remotas

Ahora, mientras está depurando un proceso remoto, el IDE puede reiniciar una configuración de forma automática. Basta con habilitar la nueva opción Auto restart para configuraciones de depuración remotas.

Trazas de pila asíncronas en JVM remotos

IntelliJ IDEA 2018.3 now supports async stack traces in remote JVMs. To start using the agent remotely:

  • Copie /lib/rt/debugger-agent.jar en la máquina remota.
  • Añada -javaagent:debugger-agent.jar a las opciones de JVM remotas.

Ahora se pueden definir anotaciones asíncronas en el diálogo Async Annotations Configuration.

Acción para eliminar todos los puntos de interrupción

IntelliJ IDEA 2018.3 viene con nuevas acciones útiles para eliminar todos los puntos de interrupción de un proyecto o de un archivo. Les podrá asignar sus propios accesos directos en Preferences (Settings) | Keymap | Debugger Actions.

Maven

Ahora es posible delegar todas las acciones de ejecución y de build a Maven. Vaya a Preferences (Settings) | Build, Execution, Deployment | Build Tools | Maven | Runner y seleccione la nueva opción Delegate IDE build / run actions to Maven.

Terminal

Gracias a las mejoras en el terminal integrado, IntelliJ IDEA 2018.3 guardará los nombres de las pestañas del terminal, el directorio en el que se está trabajando y el historial de la shell al cerrar el proyecto o cerrar IntelliJ IDEA.

También hemos rediseñado las pestañas de terminales para que sean como las demás pestañas de la ventana de herramientas.

Configuración de ejecución

Macros en configuración de ejecución de Java

Ahora, IntelliJ IDEA permite usar macros en las configuraciones de ejecución «Application» y «npm». Puede introducir una macro predefinida en el campo Program arguments.

Posibilidad de usar archivos de texto como entrada

Si quiere usar un archivo de texto o de registro como entrada, seleccione la opción Redirect input from en el diálogo Run/Debug Configurations y, después, especifique la ruta al archivo que tiene los datos de entrada.

La configuración de ejecución se ejecuta solo como instancia única de forma predeterminada

Ahora, de forma predeterminada, las configuraciones de ejecución solamente se ejecutan como instancias únicas. Sin embargo, si alguna vez quiere ejecutar en paralelo varias instancias de la misma configuración de ejecución, habilite la opción Allow running in parallel en el diálogo Run/Debug Configuration.

Javascript y Typescript

Importaciones automáticas a JavaScript

IntelliJ IDEA ahora puede añadir automáticamente importaciones para símbolos desde las dependencias del proyecto, en archivos JavaScript. Esto funcionará siempre y cuando haya un archivo de definición TypeScript en el paquete, o bien si el paquete contiene fuentes escritas en un módulo ES.

Compatibilidad con Angular mejorada

Ahora la finalización de código y la opción «Go to definition» para variables, tuberías asíncronas y variables de referencia de plantillas en plantillas de Angular son más precisas.

Compatibilidad con worker threads para Node.js

Ahora puede depurar Node.js workers en IntelliJ IDEA al usar Node.js 10.12 o posterior y el indicador --experimental-worker. El IDE ofrece finalización de código para el API de worker threads.

Más flexibilidad con ESLint y TSLint

Puede anular los niveles de gravedad en el archivo de configuración de linter y contemplar todos los problemas del linter como errores o advertencias.

Para los errores TSLint, pulse Alt+Intro y, después, la tecla de flecha derecha. Ahora hay una opción para añadir un comentario especial de deshabilitar TSLint para esta regla.

Kubernetes

Compatibilidad con archivos de recursos Helm

Ahora el IDE resuelve las plantillas de recursos Helm y le ofrece nuestra conocida capacidad de edición: finalización de código, refactorización Rename y, por supuesto, inspecciones y correcciones rápidas.

Navegación en archivos de recursos Helm

El IDE le permite navegar de un uso del valor a su declaración en el archivo chart’s values.yaml. Puede utilizar los iconos del medianil para navegar entre la definición de un indicador y su selector. Además, hay nuevos iconos del medianil en archivos values.yaml que pueden usarse para navegar a valores anulados/que se anulan.

Vista previa del resultado de plantilla Helm

El IDE puede mostrar ahora una vista previa de la generación del resultado de la plantilla Helm en el diff. Solo tiene que elegir la nueva acción Kubernetes | Helm Template en el menú de contexto.

Actualización de dependencias Helm

Con la nueva acción Helm Dependency Update, podrá descargar las dependencias tgz externas (o actualizar las existentes) y mostrarlas en el árbol del proyecto.

Herramientas para bases de datos

Base de datos Cassandra

En esta versión, hemos añadido compatibilidad para otra base de datos NoSQL: Cassandra.

Mejoras en la finalización de código SQL

La finalización de código funciona para campos no agregados en GROUP BY, todas las columnas enumeradas en la variable de tablas SELECT, MERGE e INSERT INTO, los parámetros con nombre en procedimientos almacenados, campos numéricos en SUM() y AVG(), cláusula FILTER (WHERE) y tipos de campo en SQLite.

Introducir alias de tablas

Ahora podrá usar la acción Introduce table alias para crear un alias directamente en la tabla; este alias reemplazará de forma automática los usos del nombre de la tabla.

Modo de conexión única

Cada consola nueva implica una nueva conexión. Sin embargo, en IntelliJ IDEA 2018.3, es posible usar solo una conexión para la fuente de datos, de manera que todas las consolas utilicen esta conexión única. Puede ver cualquier objeto temporal en el árbol de la base de datos. También es posible usar la misma transacción en distintas consolas. Para activar esta opción, vaya a Data source properties | Options | Single connection mode.