IntelliJ IDEA 2021.1 introduce la compatibilidad con Java 16 y WSL 2, la integración con Space, Code With Me, una ventana de vista previa HTML dentro del IDE, la opción de ejecutar código en hosts SSH y en contenedores Docker, y otras actualizaciones útiles. ¡Puede ver este vídeo de resumen o seguir leyendo para conocer en detalle los cambios más significativos!
Integración con Space, nuestra nueva plataforma para el desarrollo de software y colaboración en equipo, ya está disponible y lista para usar. Puede conectarse con su organización en JetBrains Space a través de Get from VCS, que se encuentra justo en la pantalla de bienvenida. Cuando haya iniciado sesión, podrá ver y clonar los repositorios de los proyectos, revisar el código de sus compañeros y escribir scripts de automatización de Space.
¡Sabemos que llevaba tiempo esperando esta actualización! Ahora puede trabajar con proyectos Java ubicados en WSL 2 en IntelliJ IDEA. El IDE puede detectar instalaciones de JDK, instalar JDK y compilar y ejecutar proyectos de Maven y Gradle, además de proyectos que usen el sistema de build de IntelliJ IDEA.
Code With Me, un servicio para el desarrollo colaborativo y la programación en pares, ahora se incluye listo para usar en IntelliJ IDEA. También cuenta con llamadas de vídeo y audio para llevar al siguiente nivel la colaboración a distancia. Siempre que quiera hablar con sus compañeros, puede iniciar llamadas de audio y vídeo directamente desde el IDE de JetBrains. Code With Me funciona a la perfección tanto para reuniones entre dos personas como para sesiones de grupo, a las que puede invitar a docenas de participantes. Para obtener más información acerca de estas actualizaciones, lea nuestra entrada del blog.
La funcionalidad Run Targets le permite ejecutar, probar, perfilar y depurar su aplicación en contenedores Docker o en máquinas remotas. Actualmente, IntelliJ IDEA Ultimate le permite ejecutar aplicaciones Java, pruebas de JUnit y proyectos de Maven, Gradle, Micronaut, Quarkus basado en Maven y Spring Boot en destinos Docker, SSH y WSL. Para obtener más información, consulte esta entrada del blog.
La nueva vista previa del navegador integrada le permite previsualizar los archivos HTML rápidamente. Para abrirla, haga clic en el icono con el logotipo de IntelliJ IDEA en el widget de la esquina superior derecha del editor. Si realiza algún cambio en el código HTML o si cambia los archivos CSS y JavaScript enlazados, la vista previa se actualizará sobre la marcha.
Hemos hecho el ámbito de búsqueda más personalizable. Puede definir las dependencias externas para que se incluyan en el ámbito o para que se excluyan. Vaya a Preferences/Settings | Appearance & Behavior | Scopes y utilice los botones a la derecha para cambiar el estado de External Dependencies.
Hemos actualizado la compatibilidad con las listas de accesos directos de Windows para que sea posible abrir los proyectos recientes haciendo clic con el botón derecho en el icono de IntelliJ IDEA en la barra de tareas o en el menú Inicio.
Una de nuestras prioridades clave es hacer nuestro IDE más accesible para todos los usuarios. En esta versión, hemos añadido más etiquetas para los elementos de la interfaz de usuario en la pantalla de bienvenida, en la vista Project Structure y en el registro de VCS. Estos elementos, al igual que los iconos del medianil, ahora se leen correctamente al habilitar un lector de pantalla. También estamos trabajando para mejorar la accesibilidad para los usuarios de macOS.
Ahora su IDE aplicará de forma automática el tema de contraste alto cuando abra el IDE por primera vez si utiliza el modo de contraste alto en Windows.
La creación de solicitudes de incorporación de cambios ahora lleva menos tiempo: solo tiene que hacer clic en el icono + en la vista Pull Requests y rellenar todos los datos. Las pestañas nuevas en la parte superior de la vista contienen toda la información sobre su solicitud de incorporación de cambios. Si hace doble clic en cualquier archivo en la pestaña Files, el IDE abrirá la diff dentro del editor. También tendrá compatibilidad con las plantillas de solicitud de incorporación de cambios, que contienen el texto de la descripción para todas sus solicitudes de incorporación de cambios.
IntelliJ IDEA es compatible con las plantillas de confirmación de Git. Si quiere crear un mensaje de confirmación personalizado, puede utilizar una plantilla y rellenarla con la información que considere importante. El IDE mostrará este texto como un mensaje de confirmación inicial.
Ahora es sencillo elegir un perfil de inspección de código antes de confirmar los cambios a VCS. Haga clic en el icono de la rueda dentada para mostrar las opciones de confirmación, marque la casilla de verificación Analyze code, haga clic en Choose profile y seleccione el perfil deseado. Su IDE lo utilizará para inspeccionar su código antes de la confirmación.
En v2021.1, puede obtener un archivo de otra rama en el cuadro de diálogo Compare with branch. Solo tiene que seleccionar el archivo que quiere obtener y hacer clic en el nuevo icono de flecha abajo situado junto a Show diff.
La nueva acción Save to Shelf le permite copiar sus cambios al Shelf al tiempo que los mantiene en los cambios locales. Puede acceder a esta acción pulsando ⇧⌘A en macOS (Ctrl+Mayús+A en Windows o Linux) y escribiendo «Save to Shelf».
El complemento de Perforce ahora es totalmente compatible con IntelliJ IDEA Community Edition y se incluye integrado con su IDE. The source code for this plugin is available on GitHub.
Elegir una fuente para el editor que se pueda leer sin dificultad durante muchas horas de programación resulta fundamental. La configuración de tipografía añadida recientemente facilita un poco esta elección y la hace más personalizada. En v2021.1, puede ajustar el espesor de los estilos de fuente principal y negrita en Preferences / Settings | Editor | Fonts.
Cuando hay abiertas varias pestañas que dividen el editor verticalmente, puede hacer doble clic en cualquiera de ellas para maximizar la ventana del editor para esa pestaña concreta. Para devolver la ventana a su tamaño original, simplemente haga doble clic en ella de nuevo.
IntelliJ IDEA ahora es compatible con las expresiones de JSONPath con las sintaxis Goessner o Jayway. Para los archivos JSON, puede llamar la acción Evaluate JSONPath Expression desde Edit | Find para escribir consultas en JSONPath. Para los archivos que contienen partes escritas en JSONPath, puede utilizar la misma funcionalidad y añadir una entrada JSON para probar su consulta JSONPath.
IntelliJ IDEA has support for the newline-delimited JSON Lines format, which is used for working with structured data and logs. El IDE reconocerá los tipos de archivo .jsonl, .jslines, .ldjson y .ndjson.
Hemos rediseñado la interfaz de usuario del perfilador. La ventana Home se ha vuelto mucho más informativa, y ahora se puede adjuntar un perfilador al proceso con mayor rapidez. También hemos añadido dos nuevas opciones a las que se puede acceder haciendo clic con el botón derecho en una aplicación en ejecución: Capture Memory Snapshot, para hacer capturas de pantalla *.hprof de sus aplicaciones, y CPU and Memory Live Charts, que abre una pestaña con herramientas de visualización para controlar el consumo de recursos.
IntelliJ IDEA tiene compatibilidad básica con Java 16, que se publicó en marzo de 2021. Entre las actualizaciones se incluye la posibilidad de una clase interna para declarar miembros que sean explícita o implícitamente estáticos y cambios en Stream.collect(toUnmodifiableList())
, que ahora se convierte en stream.toList()
. El IDE muestra el elemento toList()
primero en la lista de finalización de código para secuencia.
IntelliJ IDEA puede avisarle cuando se inicializan vectores con un tamaño negativo. También puede reconocer los métodos Arrays.copyOf()
y Collection.toArray()
. Además, el IDE admite métodos para abrir o convertir enteros, como Integer.longValue
y Byte.intValue
.
Ahora puede evitar las conversiones innecesarias restringiendo el tipo de parámetro del bucle for-each. Otra inspección le permite simplificar la sintaxis del código intercambiando las llamadas .filter()
y .map()
si el filtro utiliza el mismo valor que produce el asignador. Además, la inspección que reemplaza StringBuffer
por StringBuilder
se ha actualizado para abarcar más casos.
Las nuevas opciones de formateo para métodos de compilador encadenado ayudan a mejorar su legibilidad. Puede configurar el formateador en Preferences/Settings | Editor | Code Style | Java | Wrapping and Braces dentro de la lista desplegable Chained method calls. La opción Builder methods le permite crear una lista de métodos que el IDE percibe como métodos de compilador, lo que provoca que se coloque cada uno en una línea separada. Cuando se marca la casilla de verificación Wrap first call, el primer método de compilador también aparecerá en una línea separada. También puede añadir sangrías manualmente, y si marca la casilla de verificación Keep builder methods indents, el IDE las dejará intactas.
El análisis del código sobre la marcha permite detectar errores y advertencias mucho más rápido. En comparación con las versiones anteriores, IntelliJ IDEA 2021.1 resalta los problemas del código casi al instante. El mecanismo de finalización de código ahora funciona mucho más rápido, y la capacidad de respuesta del IDE ante los bloqueos ha mejorado.
El mecanismo de finalización de código en Kotlin ofrece funciones que requieren parámetros de tipo. Una vez que selecciona una función de este tipo, el IDE añade el parámetro de tipo correcto al código previo.
El ejecutor de cobertura de código de IntelliJ IDEA ahora es totalmente compatible con Kotlin en las corrutinas y funciones inline.
Hemos rediseñado la interfaz de usuario de la refactorización Change Signature y hemos añadido una nueva casilla de verificación que le permite definir el parámetro añadido como predeterminado.
El depurador de IntelliJ IDEA puede evaluar las expresiones get en Kotlin y mostrarlas en la vista Variables. Su IDE también le permite acceder directamente a la fuente desde ahí.
Los diagramas de clase UML ahora funcionan para el código Kotlin compilado para JVM y pueden mostrar tanto clases Java como Kotlin. Planeamos admitir diagramas UML para otros backends Kotlin pronto.
Los desarrolladores de Scala no utilizan siempre los tipos de clase superior (higher-kinded type), pero cuando lo hacen, les gusta hacerlo con estilo. La descripción emergente de type diff ahora admite kinds.
Esta versión introduce la finalización de código Scala basada en aprendizaje automático. Puede habilitar la funcionalidad en Settings | Editor | Code Completion | ML | Scala.
Además de los módulos, los gráficos de compilación ahora pueden mostrar fases y unidades, de modo que puede obtener una visión incluso más detallada de su compilación. Abra la ventana de herramientas Build, seleccione el nodo Chart y seleccione el nivel deseado (Level).
The sbt-idea plugin makes it possible to develop IntelliJ Platform plugins using Scala and sbt. Ahora existe una plantilla del asistente de proyecto integrada para que el proceso sea incluso más sencillo (esta funcionalidad depende del Plugin DevKit).
Hemos recuperado la posibilidad de personalizar los ajustes al importar proyectos Maven. Para activar esta opción, seleccione Show settings dialog for new Maven projects en File | New Projects Settings | Preferences for new Projects | Build, Execution, Deployment | Build Tools | Maven.
Su IDE ahora puede resaltar las utilizaciones del protocolo http:// y ofrecerle el cambio a https://. Esta inspección está habilitada de forma predeterminada. Puede añadir URL a la lista de URL ignoradas o deshabilitar la inspección de el proyecto en su totalidad o parcialmente en Preferences/Settings | Editor | Inspections | Security – Link with unencrypted protocol.
Si ejecuta una solicitud desde el cliente HTTP, la respuesta aparece en la ventana de herramientas Services, que cuenta con actualizaciones en la interfaz/experiencia de usuario en esta versión. Puede contraer la respuesta en formato HTML, JSON o XML, así como copiar su cuerpo, ocultar números de línea, seleccionar el formato de visualización y desplazarse rápidamente hasta el principio o el final de la respuesta.
Es posible configurar los ajustes de SSL en el cliente HTTP si utiliza la autenticación de cliente SSL para los protocolos https://. Para hacerlo, haga clic en Add environment file y seleccione Private. El IDE creará de forma automática un archivo en el que podrá añadir sus configuraciones de SSL. La finalización de código le ayudará con esto.
Hemos rediseñado los asistentes para crear proyectos Spring, Micronaut, Quarkus y MicroProfile. ¡La creación de un proyecto nuevo solo requiere dos pasos! Toda la información básica se agrupa convenientemente en la primera pantalla, mientras que la segunda pantalla contiene ajustes específicos del marco de trabajo. La nueva interfaz de usuario es más clara y simplifica el proceso de creación del proyecto.
Hemos añadido iconos rediseñados al medianil para los proyectos que incluyen entidades JPA. Se puede hacer clic en estos iconos y contienen una lista con las acciones más útiles para las entidades y sus atributos. También hemos mejorado la compatibilidad con JPA en los proyectos Kotlin y de varios módulos.
Ahora se puede utilizar la consola JPA para escribir y ejecutar consultas JPQL en los proyectos Jakarta EE 9.
Tenemos buenas noticias para quienes usan nuestro tema claro: el diagrama UML incluye un nuevo esquema de color con un aspecto más claro y fácil de leer.
Swagger admite especificaciones con referencias de archivos externos ($ref). Además, la vista Structure para los archivos de especificaciones cuenta con más nodos, incluidos Security, Callbacks y Examples.
IntelliJ IDEA ahora admite una herramienta experimental para detectar los elementos DOM de una aplicación web. Antes de utilizarla, instale el complemento Selenium UI Testing.
Puede acceder a esta nueva herramienta desde Tools | Generate Selenium Page Object. En el cuadro de diálogo que se abre, introduzca la dirección de una página web, seleccione cualquier elemento DOM y añádalo al área de debajo. En ella, puede cambiar el lenguaje o el marco de trabajo del elemento. Nuestro generador de objetos de página es compatible con Java, Kotlin y Groovy, y con marcos de trabajo como Selenium, FluentLenium, Selenide, Geb, Atlas y JDI Light.
Puede personalizar las plantillas de código de cada marco de trabajo.
Es posible eliminar todos los recursos del clúster en el contexto actual desde el editor; simplemente haga clic en el icono Run del medianil y seleccione Delete.
Puede elegir los nuevos componentes Kustomize 3.7.0 en la lista desplegable de la versión de Kustomize en Settings/Preference | Languages & Frameworks | Kubernetes.
Si necesita trabajar con lo que devuelve el comando kubectl get <resource type> -o yaml
u organizar recursos en listas, el IDE ahora admite kind: List. En cada recurso de la lista, puede cambiar el nombre de las etiquetas y utilizar la asistencia a la codificación y la navegación a través de los iconos del medianil. También puede convertir una lista a un archivo YAML multidocumento y viceversa.
Ahora es posible crear archivos values.yaml personalizados. El IDE considera los archivos que contienen «values» en el nombre como archivos de valores. Seleccione Configure Helm Parameters, Helm Lint o Helm Template en el menú contextual para abrir un cuadro de diálogo en el que puede configurar qué archivos de valores utilizará la plantilla de gráfico. También puede añadir valores manualmente pegándolos en el campo Additional values de este cuadro de diálogo.
El cuadro de diálogo Run/Debug Configuration ahora es más conciso y ajustable. Para añadir todas las opciones de build necesarias, haga clic en Modify options. Para añadir opciones de ejecución, haga clic en Modify. El IDE ahora valida cada opción para asegurarse de que es compatible. Admitimos todas las opciones existentes para Docker Compose. La finalización de código ahora funciona para los parámetros Run Options e Image ID or name de Dockerfiles.
Hemos añadido una compatibilidad experimental con BuildKit, que agiliza la creación de proyectos. Además, la creación de etapas con nombre por separado de todo el Dockerfile multietapa ahora es más sencillo. Solo tiene que hacer clic en el icono del martillo situado junto al nombre de la etapa y el IDE creará la imagen utilizando BuildKit.
Si utiliza Dockerfiles multietapas, ahora puede plegar las etapas y ver una línea de separación entre ellas.
Es posible detener su ejecución del Dockerfile rápidamente. Para hacerlo, vaya a la ventana de herramientas Services, seleccione el elemento en ejecución, invoque el menú contextual y haga clic en Stop Deploy.
Cuando utiliza montajes bind, ahora puede introducir una ruta a un directorio en la máquina host más rápidamente. El mecanismo de finalización le permite seleccionar macros y variables de entorno en la opción Bind mount en Run/Debug Configurations.
La finalización de código ahora funciona con los nombres de imágenes.
Inspecting your CSS code with Stylelint is now easier. Ahora puede corregir los problemas con este linter popular en solo unos clics. Pase el ratón sobre un problema en su archivo o coloque el signo de intercalación en él y pulse Alt+Intro. A continuación, seleccione Stylelint: Fix current file. Además, ahora puede especificar una ruta al archivo de configuración debajo del campo correspondiente en Preferences / Settings | Languages & Frameworks | Style Sheets | Stylelint.
MDN documentation is now bundled with IntelliJ IDEA. Esto le ayudará a evitar problemas de conectividad con el sitio web MDN y hará que la documentación integrada en el editor en sus archivos HTML, CSS y JavaScript se muestre más rápidamente. La documentación integrada en el editor también será más informativa. Por ejemplo, ahora verá información sobre las versiones compatibles del navegador para las API JavaScript.
When working with style sheets, you can now check the specificity of your selectors – just hover over a selector that you want to check. Si lo prefiere, puede hacer clic en un selector y pulsar F1/Ctrl+Q para ver esta información en la ventana emergente Documentation.
Para obtener una descripción más detallada de estas y otras actualizaciones de las herramientas de bases de datos, consulte Novedades.
Hemos añadido una interfaz de usuario para la edición de permisos al modificar objetos. La ventana Modify user, que puede invocar en un usuario en el explorador de la base de datos con Cmd/Ctrl+F6, ahora tiene una interfaz de usuario para añadir permisos a los objetos. Estas actualizaciones están disponibles para PostgreSQL, Redshift, Greenplum, MySQL, MariaDB, DB2, SQL Server y Sybase.
Hemos introducido una solución para generar declaraciones sencillas directamente desde el explorador de bases de datos: las plantillas activas. Puede añadir sus propias plantillas o editar las existentes a través de Preferences/Settings | Editor | Live Templates en el nodo SQL.
Hemos simplificado la navegación: al invocar Go to declaration (Ctrl/Cmd+B) en un objeto en SQL ahora le lleva al DDL, y no al árbol de la base de datos. También hemos introducido un acceso directo para la acción Select in database tree: Alt+Mayús+B para Windows/Linux y Opción+Mayús+B para macOS.
Hemos mejorado la clasificación de los datos. Un nuevo campo ORDER BY funciona de forma similar al campo WHERE (que antes se denominaba Filter): introduzca una cláusula funcional para que se aplique a la consulta de la tabla. Si quiere utilizar la clasificación en el lado del cliente (IntelliJ IDEA no volverá a ejecutar la consulta ni ordenará los datos dentro de la página actual), desmarque Sort via ORDER BY. Otra actualización es que la clasificación no se «acumula» de forma predeterminada; si hace clic en el nombre de una columna para ordenar los datos, la clasificación según las otras columnas se ignorará.
Los accesos directos más famosos del mundo, Ctrl/Cmd+C/V/X ahora funcionan para copiar, cortar y pegar fuentes de datos. Cuando copia una fuente de datos, el XML se copia al portapapeles y después puede compartirlo a través de una aplicación de mensajería. También puede usar la opción de pegar para pegar un extracto de XML que proceda de otro lugar. Si corta y pega una fuente de datos dentro de un proyecto, simplemente se moverá, sin necesidad de contraseña. La contraseña es necesaria en el resto de casos.
Ahora puede editar datos en las colecciones MongoDB. También está disponible una vista previa de la instrucción. Para hacer que la edición sea más flexible, hemos introducido la posibilidad de cambiar el tipo de un campo desde la interfaz de usuario. Esto se puede hacer desde el menú contextual del campo o en el editor de valores.
La compatibilidad con los índices compartidos disponibles públicamente está integrada en IntelliJ IDEA Community Edition. No necesita instalar un complemento especial. En su lugar, puede utilizar la funcionalidad de índices compartidos desde el IDE.
IntelliJ IDEA ahora es compatible con todas las actualizaciones de Android Studio 4.1.1.
IntelliJ IDEA ahora puede importar la configuración de las facetas OSGI desde bnd-maven-plugin.