O IntelliJ IDEA 2022.2 inclui várias melhorias de qualidade na funcionalidade de desenvolvimento remoto, tornando-o mais elegante e estável. A partir da v. 2022.2, o IntelliJ IDEA usa o JetBrains Runtime 17, que aprimora a experiência e o desempenho do IDE de várias maneiras. O IntelliJ IDEA Ultimate adiciona suporte aos recursos Spring 6 e Spring Boot 3 e apresenta atualizações para várias outras frameworks. A nova versão fornece muitas outras atualizações e refinamentos dignos de nota, que são abordados em detalhes abaixo.
Introduzimos um grande número de upgrades importantes para o desenvolvimento remoto no IntelliJ IDEA 2022.2, para tornar sua experiência mais estável e rica em recursos. Atualizações recém-lançadas trazem várias melhorias de qualidade. Conecte seu laptop via SSH ao IntelliJ IDEA instalado em um servidor remoto e usufrua de uma experiência fluida de desenvolvimento. Se você está usando o JetBrains Space para orquestrar os back-ends de maneira eficiente com a nova versão, pode gerenciar seus ambientes de desenvolvimento diretamente do IntelliJ IDEA. Saiba mais nesta postagem de blog.
As of v2022.2, all IntelliJ IDEA updates come with JetBrains Runtime 17 (JBR 17), which brings a significant IDE performance improvement, better security, enhanced rendering performance on macOS thanks to the Metal API, and more. Leia esta postagem no nosso blog para mais detalhes.
Agora, o IntelliJ IDEA 2022.2 oferece suporte total aos recursos do Spring 6 e Spring Boot 3, incluindo novas classes @AutoConfiguration
e @ConfigurationProperties
com a nova sintaxe de vinculação de construtor sem uma @ConstructorBinding
explícita. Não se esqueça de atualizar o IDE se quiser experimentar o Spring 6 ou mudar seus projetos para esta nova versão.
Para facilitar a execução e a depuração de arquivos únicos sem ter uma configuração de execução dedicada, introduzimos a nova funcionalidade Run Current File, disponível no widget Run/Debug. Com ela, você pode executar e depurar o arquivo aberto no momento, e o IDE usará automaticamente o tipo de configuração de execução mais adequado para esse arquivo.
Há um novo atalho de teclado que altera o tamanho da fonte em todo o editor. Para aumentar o tamanho da fonte, pressione Alt+Shift+ponto. Para diminuí-la, pressione Alt+Shift+vírgula. Além disso, agora há um indicador de tamanho de fonte mostrando o tamanho da fonte atual junto com a opção de reverter para o padrão.
Para o macOS, introduzimos a capacidade de organizar seu espaço de trabalho combinando todas as janelas de projeto abertas em uma só, transformando cada janela em sua própria aba. Para realizar essa ação, acesse Window | Merge All Project Windows.
Agora, você pode configurar de que forma as inspeções aparecem no editor sem alterar seu nível de gravidade. Quando você deseja alterar o estilo de realce de inspeção, pode fazer isso usando o novo menu suspenso Highlighting in editor, que mostra convenientemente todas as opções disponíveis.
A barra de progresso Cloning repository agora aparece na tela de boas-vindas do IDE e é mostrada diretamente na lista de projetos, o que a torna mais clara e fácil de usar.
A caixa de diálogo Add Mnemonic Bookmark foi atualizada com um campo Description, para que agora você possa adicionar uma descrição opcional ao seu marcador imediatamente.
Agora, é possível desabilitar o fechamento automático de comentários em bloco ao pressionar a tecla Enter. Para fazer isso, acesse Settings / Preferences | Editor | Smart Keys e desmarque a caixa de seleção Close block comment na seção Enter.
Agora você pode acessar Code Completion Settings e configurar suas preferências diretamente do botão de três pontos verticais no pop-up de complementação de código.
Quando um arquivo é explicitamente associado a um texto sem formatação por engano, o IntelliJ IDEA agora notifica você sobre a associação incorreta do tipo de arquivo e sugere sua redefinição diretamente no editor, sem que você precise fazer isso manualmente em Settings / Preferences.
Agora, é possível gerar facilmente sumários em arquivos Markdown com base nos cabeçalhos dos documentos. Essa nova ação está disponível nos menus pop-up Insert e Generate, que você pode invocar por meio do atalho Alt+Insert ou clicando com o botão direito do mouse. O IDE inserirá um sumário na posição atual do cursor e o delimitará com tags <!-- TOC -->
, para que você possa atualizá-lo mais tarde chamando o mesmo menu.
Implementamos uma série de alterações nas inspeções Java para ajudar você a rastrear possíveis bugs e simplificar o código. Por exemplo, a inspeção Standard ‘Charset’ object can be used foi aprimorada e agora reconhece .name()
e .toString()
. O IDE agora pode avisar você quando variáveis de padrão ocultam campos, e ele também captura chamadas Objects.requireNonNullElse
sem sentido. Várias inspeções Java relacionadas a JUnit foram convertidas em inspeções de JVM e, portanto, agora também estão disponíveis em Kotlin. Além disso, a complementação de código agora sugere literais .class quando aplicável.
Para saber mais sobre outras melhorias relacionadas ao Java, leia a postagem no nosso blog.
Adicionamos suporte para os recursos introduzidos no Kotlin 1.7.0, a versão mais recente da linguagem. O IDE agora renderiza corretamente os tipos definitivamente não anuláveis e fornece uma inspeção útil para requisitos de opt-in.
Integramos o depurador Kotlin com a funcionalidade DFA (Data Flow Analysis), para que agora ele mostre dicas de DFA indicando quais condições são verdadeiras e quais branches serão executados. Anteriormente, essa integração estava disponível somente para Java, mas agora também é compatível com o Kotlin.
A partir da v2022.2, o compilador Kotlin incluído não é mais usado com o construtor nativo do IntelliJ IDEA. Agora, tanto os builds locais e de CI são executados com a versão do compilador Kotlin declarada nas configurações do projeto. Essa alteração elimina inconsistências entre builds locais e de CI que apareciam anteriormente devido à incompatibilidade da versão do compilador empacotado e a versão definida no arquivo de build do projeto. Saiba mais nesta postagem de blog.
Nosso trabalho mais recente para otimizar índices afetou positivamente a velocidade e o desempenho do IDE para realce de código, complementação e o recurso Find Usages.
A partir da v2022.2, o IntelliJ IDEA pode ler tipos match de arquivos .tasty, analisá-los adequadamente, resolver variáveis de tipos, usá-las como argumentos de tipo, oferecer suporte a inspeções e mostrar tipos como texto. On top of that, we’ve added support for Option-less extractors , type lambdas and polymorphic function types , type-level compiler intrinsics , and ?
as a wildcard together with _
in Scala 2.13.9 and 2.12.16. O código copiado e colado agora também é recuado corretamente.
O IntelliJ IDEA 2022.2 agora avisa quando a palavra-chave return
está sendo usada dentro de uma função anônima para sair da função sem executar todo o código dentro dela. Isto geralmente não é um uso desejado e pode resultar numa implementação com vazamentos e custos de desempenho ocultos. Há um novo aviso acionado quando um parâmetro private ou class oculta uma variável de superclasse. Além disso, um erro é exibido quando você tenta substituir uma variável de uma maneira que é proibida pelo compilador. Esses novos avisos podem ser configurados para serem exibidos se as suas respectivas opções de compilador (-Xlint:nonlocal-return
e -Xlint:private-shadow
) estiverem presentes.
Se você tiver uma linha de código excessivamente longa porque contém uma lista de argumentos ou elementos em uma coleção, agora pode usar a ação Put arguments on separate lines no menu pop-up para dividir essa lista rapidamente em várias linhas. O oposto também é possível: se você acha que uma lista de várias linhas é curta o suficiente, pode usar a ação Put arguments on one line para transformá-las em uma só linha.
O realce baseado no compilador foi ajustado para a melhor utilização de recursos. O IDE agora respeita as configurações de realce de arquivo definidas pelo usuário. A compilação agora é acionada em menos casos e usa menos threads em segundo plano. O escopo de compilação foi reduzido ao módulo relevante e ao escopo de origem.
A ação Safe Delete remove um elemento da definição e todas as suas chamadas. Essa ação agora também funciona para parâmetros de tipo.
We’ve added support for Groovy-Integrated Queries (GINQ). O IDE agora fornece realce de sintaxe, complementação de código e inspeções para esse recurso do Groovy 4.
Agora, o IntelliJ IDEA 2022.2 pode ajudar você a importar certificados SSL confiáveis de armazenamentos confiáveis do sistema. Ele usará automaticamente os certificados personalizados específicos para o seu ambiente corporativo. Nenhuma ação adicional é necessária da sua parte, pois tudo deve funcionar imediatamente.
Atualizamos o IntelliJ Profiler, facilitando a coleta de snapshots. Agora, quando você inicia o profiling, os gráficos dinâmicos CPU e Heap Memory aparecem lado a lado com o console. Como resultado, você pode ver o desempenho da sua aplicação enquanto também coleta muitos snapshots da mesma aplicação dentro do período desejado de profiling.
As funções inline do Kotlin agora são mostradas junto com as demais em Flame Graph, Call Tree e Method List, permitindo visualizar o tempo de CPU dessas funções e otimizá-lo, se necessário. Este recurso funciona atualmente em sistemas Linux e macOS e apenas está disponível para a opção Start profiling. Estamos trabalhando para adicionar suporte ao Windows e em breve o incluiremos no modo Attach.
O Spring Framework 6 permite definir um cliente HTTP como uma interface Java com métodos anotados. O IntelliJ IDEA 2022.2 fornece complementação de URLs, navegação e integração com o cliente HTTP para essas interfaces.
Agora, o IntelliJ IDEA Ultimate fornece complementação de URLs, a funcionalidade Search Everywhere e dicas Find Usages para URLs do Spring Cloud Gateway. Você pode gerar facilmente uma solicitação HTTP ou encontrar todas as rotas de gateway usando a janela de ferramentas Endpoints.
O IntelliJ IDEA 2022.2 realça automaticamente os corpos JSON/XML em testes com APIs Java populares, como Spring WebTestClient, RestAssured, WireMock e MockServer. Como resultado, esses fragmentos de dados apresentam melhor legibilidade e são mais fáceis de editar. Você também pode usar complementação de URL e navegação para a declaração nesses locais em seus testes.
O IntelliJ IDEA 2022.2 agora pode ajudar você com a depuração de binários de imagem nativa do GraalVM. Você pode anexar o depurador a qualquer executável baseado em GraalVM ou iniciar sua aplicação com o depurador anexado. A configuração de execução correspondente será criada automaticamente para projetos Maven/Gradle. Essa integração é experimental e requer a instalação da versão de desenvolvimento do GraalVM e deste plug-in.
Agora, você pode navegar facilmente até o código gerado a partir de .proto e vice-versa. Certifique-se de que os plug-ins gRPC e Protocol Buffers estejam habilitados.
O IntelliJ IDEA 2022.2 agora reconhece comandos de CLI declarados com a biblioteca Spring Shell e verifica sua correção.
Agora, o IntelliJ IDEA oferece suporte corretamente a padrões de URL de serviços Web comuns JAX-RS declarados como @ApplicationPath
e sub-recursos em complementação de URLs, navegação e Find Usages.
O IntelliJ IDEA Ultimate 2022.2 oferece suporte a conexões WebSocket, permitindo que você crie solicitações e envie e receba mensagens.
Agora, o IntelliJ IDEA Ultimate pode enviar consultas GraphQL via protocolos HTTP e WebSocket imediatamente. Para http:// e https://, são usadas solicitações HTTP simples, enquanto ws:// e wss:// são delegados para o executor WebSocket.
Implementamos algumas melhorias na UI/UX para o cliente HTTP. Em primeiro lugar, apresentamos uma maneira conveniente de selecionar um ambiente de execução usando um ícone na medianiz. Para habilitá-lo, escolha a opção Select Environment Before Run na caixa de combinação Run with. Em segundo lugar, melhoramos exibição Response, adicionando uma barra de progresso que permite acompanhar o processo de download.
Agora, arquivos JSON, YAML e .properties apresentam referências da Web inseridas automaticamente dentro de valores que começam com http:// e https://. Você pode abrir esses links facilmente em um navegador Web com um único clique, ou pode gerar uma solicitação no cliente HTTP a partir do menu Context Actions (Alt+Enter).
O IntelliJ IDEA 2022.2 agora fornece referências e suporta recolhimento de atributos de mensagem em anotações Bean Validation no Java e no Kotlin. Você pode usar a complementação para chaves de mensagem ou navegar até suas declarações nos arquivos i18n ValidationMessages.properties.
Reformulamos o plug-in para o AWS CloudFormation, atualizando esquemas de metadados e melhorando a complementação de propriedades. Você pode instalar a versão atualizada do plug-in acessando o JetBrains Marketplace.
IntelliJ IDEA now supports all of the features in Jakarta Persistence 3.1, including the new JPQL syntax, functions, and types, and it provides language highlighting and code completion for them.
IntelliJ IDEA 2022.2 introduces image completion for the Testcontainers API where you can find all available Docker images and their versions. Clique na referência para abrir a URL do Docker Hub correspondente no seu navegador da Web.
Agora, é possível copiar imagens facilmente de um daemon do Docker para outro usando a nova ação Copy Docker Image, que salva a imagem em um arquivo e a envia para a conexão escolhida.
Agora, o IntelliJ IDEA 2022.2 conecta-se automaticamente ao Docker depois que você reinicia o IDE. Esta nova configuração fica ativa como padrão, mas pode ser alterada em Settings / Preferences | Advanced Settings | Docker.
A partir da v2022.2, o IntelliJ IDEA integra-se ao Colima e ao Rancher para oferecer suporte a mais opções para estabelecer conexões com um daemon do Docker.
The Kubernetes plugin for IntelliJ IDEA 2022.2 provides integration with the Telepresence tool in order to intercept HTTP requests from services in the Kubernetes cluster and route them to your service running locally. Isso permite depurar esses serviços com mais facilidade e executar apenas o subconjunto necessário de serviços localmente.
A UI da estrutura de páginas Web foi significativamente aprimorada. Agora, você pode ler confortavelmente as partes mais importantes, como o nome da tag, o ID e as classes CSS aplicadas, graças ao realce do formato de texto.
Agora, você pode navegar facilmente de volta para um elemento de página simplesmente clicando em seu ícone na medianiz.
Ao criar um novo arquivo de objetos de página, o assistente agora oferece um campo de URL opcional. Se o endereço Web estiver incluído, o assistente sugerirá um nome de arquivo de objetos de página com base no endereço do link. Além disso, a URL inserida é carregada automaticamente quando o Editor de objetos de página é aberto.
Ao adicionar novos elementos de página ao seu código, o cursor agora se move automaticamente até o final do bloco de código adicionado, para que você possa navegar facilmente por ele e simplesmente continuar editando.
Sempre que você digita uma nova classe de objeto de página não referenciada ao trabalhar em uma existente, pode corrigir o aviso de código não resolvido simplesmente navegando até o menu de contexto do aviso e criando um novo objeto de página.
Para a v2022.2, aprimoramos o processo de importação de arquivos, implementando a capacidade de selecionar vários arquivos CSV e importá-los de uma só vez.
A nova UI para a caixa de diálogo Modify tornou-se a opção padrão. A partir da versão 2022.2, todos os objetos filho de uma tabela podem ser adicionados e editados usando essa nova UI. A UI antiga permanecerá disponível no menu de contexto.
Para tornar a resolução de objetos de banco de dados em scripts SQL mais precisa, implementamos dois modos de resolução: Playground e Script. O primeiro é a melhor opção quando seu arquivo é apenas um conjunto de consultas desconectadas que são independentes umas das outras e não possuem uma sequência específica. O segundo é melhor quando suas consultas têm uma lógica sequencial e devem ser executadas como um único script.
Temos trabalhado ativamente no suporte ao Angular 14 no IntelliJ IDEA 2022.2. A adição mais importante que fizemos neste lançamento foi o suporte para componentes Angular standalone. Agora, o IntelliJ IDEA reconhece corretamente componentes, diretivas e pipes marcados como standalone: true
.
O IntelliJ IDEA 2022.2 oferece suporte aprimorado para o Vue 3. Por exemplo, ele agora entende o estreitamento de tipos em diretivas v-if/else
. Além disso, foram feitas melhorias no suporte ao Pinia, a solução de gerenciamento de estado recomendada pela equipe do Vue que funciona como um armazenamento global. Tanto a complementação quanto a resolução agora funcionam no Vue com a biblioteca do Pinia, e você pode navegar até ações e propriedades de estado no armazenamento.
O IntelliJ IDEA 2022.2 inclui o TypeScript 4.7, oferecendo suporte a novos recursos de linguagem, como moduleSuffixes e ESM no Node.js. Ele inserirá automaticamente a extensão .js na instrução de importação se module estiver definido como node16 ou nodenext no seu arquivo tsconfig.json. Além disso, o IDE oferece suporte ao campo typesVersions em arquivos package.json.