O IntelliJ IDEA 2023.1 inclui uma série de melhorias na nova IU, que foi reformulada com base no valioso feedback que recebemos dos usuários. Também implementamos aprimoramentos de desempenho, resultando em importações mais rápidas do Maven e na disponibilidade antecipada de recursos do IDE ao abrir projetos. A nova versão fornece um processo simplificado de submissão, graças às verificações de submissão em segundo plano. O IntelliJ IDEA Ultimate agora oferece suporte à navegação para mapeamentos de solicitações e agentes de correspondência do Spring Security. Este lançamento contém uma variedade de outras atualizações e refinamentos dignos de nota, descritos em detalhes abaixo.
Acesse esta página para saber mais sobre a nova UI.
Em resposta ao feedback que recebemos sobre a nova IU do IDE, implementamos várias atualizações para atender às solicitações mais populares. Introduzimos o Compact Mode, que fornece uma aparência mais consolidada do IDE graças à redução de espaçamentos e elementos. A nova IU agora oferece uma opção para dividir verticalmente a área da janela de ferramentas e organizar as janelas convenientemente, assim como na antiga IU. O widget Run no cabeçalho da janela principal foi redesenhado para que sua aparência seja mais discreta e agradável aos olhos. Saiba mais sobre os novos aprimoramentos na IU introduzidos nesta versão e experimente, caso ainda não o tenha feito!
Melhoramos a experiência de inicialização do IDE executando o processo Scanning files to index no modo inteligente. Fazer isso disponibiliza toda a funcionalidade do IDE muito antes no processo de inicialização. Ao abrir um projeto, o IntelliJ IDEA 2023.1 usa caches existentes da sua sessão anterior com o projeto e ao mesmo tempo procura arquivos para indexar. Se nenhuma alteração for encontrada na verificação, o IDE estará pronto, eliminando os atrasos que antes eram causados pela indexação durante a inicialização.
Melhoramos notavelmente o desempenho do IDE na importação de projetos Maven, otimizando a resolução de dependências e também retrabalhando os processos por detrás da importação e da configuração de facetas.
Retrabalhamos o comportamento das verificações de submissão para Git e Mercurial a fim de acelerar o processo geral de submissão. Agora, verificações são feitas em segundo plano depois do commit, mas antes do push.
Para simplificar a visualização das regras de segurança aplicadas, o IntelliJ IDEA Ultimate 2023.1 fornece navegação fácil para agentes de correspondência de segurança a partir de controladores Spring. A navegação funciona tanto a partir de agentes de correspondência de segurança quanto de controladores, e vice-versa.
Na versão 2023.1, é possível ampliar e reduzir totalmente o zoom do IDE, aumentando ou diminuindo o tamanho de todos os elementos da IU de uma só vez. No menu principal, selecione View | Appearance e ajuste o zoom do IDE. Além disso, você pode atribuir atalhos personalizados para chamar essas ações em Settings/Preferences | Keymap | Main Menu | View | Appearance.
No IntelliJ IDEA 2023.1, você pode salvar e gerenciar vários layouts de janela de ferramentas e alternar entre eles quando necessário. Para salvar um novo layout, organize as janelas de ferramentas como desejar e acesse Window | Layouts | Save Current Layout as New. Se você ajustar ainda mais a organização, poderá atualizar a configuração atual usando a opção Save Changes in Current Layout ou salvar essas alterações como um layout personalizado à parte. Para ativar um layout salvo, localize-o na lista em Window | Layouts, passe o mouse sobre o nome e clique em Apply.
No IntelliJ IDEA 2023.1, introduzimos uma nova opção de layout que permite unificar a largura das janelas de ferramentas laterais ou manter a capacidade de ajustar livremente seus tamanhos conforme você personaliza seu layout. A nova caixa de seleção Remember size for each tool window está disponível em Settings/Preferences | Appearance & Behavior | Tool Windows. Saiba como essa configuração funciona para a nova e a antiga IU nesta postagem do nosso blog.
Para quem está começando a trabalhar com o IntelliJ IDEA e com programação, introduzimos uma opção para abrir um novo projeto contendo código de exemplo com dicas de onboarding. No assistente New Project, marque Generate code with onboarding tips para obter um projeto básico de sandbox com dicas que demonstram alguns dos recursos essenciais do IDE. Seguindo esse pequeno guia, os usuários podem experimentar a funcionalidade Search Everywhere, aplicar uma correção rápida e executar e depurar o código, facilitando a familiarização com o IDE.
O IntelliJ IDEA 2023.1 adiciona uma opção para predefinir o comportamento de Actions on Save para novos projetos. Para isso, acesse File | New Projects Setup | Preferences For New Projects | Tools | Actions on Save e selecione quais ações você deseja que sejam acionadas ao salvar alterações em seus projetos futuros.
Para fornecer resultados de pesquisa mais relevantes e precisos, continuamos nossos esforços para integrar a classificação de machine learning à funcionalidade Search Everywhere (Shift duplo). O algoritmo de classificação na aba Classes agora também é alimentado por machine learning por padrão, junto com os resultados nas abas Actions e Files.
No IntelliJ IDEA 2023.1, há uma nova notificação que é acionada quando o Microsoft Defender com proteção em tempo real está em execução. Como essas verificações de antivírus podem diminuir significativamente a velocidade do IDE, o IntelliJ IDEA sugere adicionar determinadas pastas à lista de exclusões do Defender. A notificação fornece opções ou para reajustar essas configurações automaticamente ou para verificar primeiro as instruções de configuração do Defender e fazer isso manualmente.
Na v2023.1, ajustamos a experiência do usuário ao colar uma linha que foi copiada ou cortada sem seleção. Agora, existe uma configuração especial que permite controlar o posicionamento do conteúdo colado. Em Settings/Preferences | Advanced Settings, localize a seção Editor e selecione o comportamento desejado para a ação Paste na lista suspensa.
O IntelliJ IDEA 2023.1 apresenta uma nova caixa de seleção Selection em Settings/Preferences | Editor | General | Appearance | Show Whitespaces que permite definir essa configuração de forma que o IDE mostre espaços em branco como pequenos pontos somente quando você seleciona o código.
Com o IntelliJ IDEA 2023.1, você pode usar expressões regulares para criar suas próprias inspeções de busca e substituição. Essas inspeções podem ser particularmente úteis para realçar problemas baseados em estilo ou em formatação. Saiba mais nesta postagem de blog.
Uma nova ação de intenção permite corrigir a formatação de tabelas em arquivos Markdown. Você pode acessar a correção rápida através do atalho Context actions (Alt+Enter) ou clicando no ícone de lâmpada amarela e selecionando Reformat table na lista exibida.
A ação do editor Fill Paragraph agora é compatível com arquivos Markdown, permitindo que você quebre textos longos em várias linhas do mesmo comprimento. Para fazer isso, defina o cursor dentro do parágrafo que você deseja editar e chame a ação no menu Edit ou procure o comando Fill Paragraph usando Find Action (Ctrl+Shift+A).
Adicionamos uma página dedicada para configurar e editar suas preferências de Markdown em Settings/Preferences | Editor | General | Smart Keys. Essa página deve facilitar o gerenciamento das suas preferências, pois fornece caixas de seleção separadas para vários recursos do editor, substituindo a única caixa de seleção anteriormente armazenada em Settings/Preferences | Languages & Frameworks.
Atualizamos a inspeção Typo para que ela não verifique mais a ortografia de hashes e valores especiais e não os marque como contendo erros ortográficos. Essa atualização abrange os seguintes valores:
Md5
, Sha1
e Sha256
. Sha384
e Sha512
com o prefixo shaNNN-
. JWT
. Para ajudar a manter seu código limpo e sem erros, atualizamos algumas inspeções Java existentes e adicionamos novas. A inspeção Malformed format string agora relata conversões de tempo ilegais que não estão de acordo com a sintaxe Java comum. A inspeção Redundant String operation agora é capaz de detectar chamadas StringBuilder.toString()
redundantes e fornecer uma correção rápida para substituí-las por contentEquals()
, para que você não crie um objeto String
intermediário. Ela também relata argumentos desnecessários em chamadas do construtor String
e sugere uma correção rápida que os remove. Saiba mais sobre outras melhorias de inspeção de código no IntelliJ IDEA 2023.1 nesta postagem do nosso blog.
Continuando a reduzir a carga cognitiva para desenvolvedores de Java, o IntelliJ IDEA 2023.1 oferece suporte para as atualizações mais recentes adicionadas no Java 20, incluindo as alterações nos recursos da linguagem Pattern Matching for switch e Record Patterns. Para mais detalhes, confira esta postagem no nosso blog.
Atualizamos a refatoração Extract Method, introduzindo a opção de aplicá-la mesmo quando o fragmento de código selecionado apresenta diversas variáveis que precisam ser retornadas. Nesses casos, o IDE primeiro sugere agrupar essas variáveis em um novo registro ou classe de bean e, em seguida, realizar a extração do método.
Integramos a funcionalidade de complementação automática no campo VM Options do pop-up Run/Debug configuration. Agora, quando você começa a digitar o nome de um sinalizador, o IDE sugere uma lista de opções de linha de comando disponíveis. Isso funciona para as opções -XX:
e -X
, bem como para algumas opções padrão que não são configuradas automaticamente pelo IntelliJ IDEA, como -ea
, mas não para -cp
ou –release
.
Agora, o IntelliJ IDEA pode remover corretamente o açúcar sintático do código Scala sem chaves e lida com refatorações em que o recurso de "menos chaves" é utilizado. Ele também oferece suporte à sintaxe sem chaves em planilhas e interpreta o recuo corretamente quando você move métodos de extensão para cima e para baixo no seu código.
No Gradle, quando você tem um módulo vazio e deseja criar o diretório raiz para o código-fonte, pode usar a caixa de diálogo New Directory, que contém algumas sugestões úteis. Com a v2023.1, essa caixa de diálogo agora também está disponível para projetos sbt. Você também pode especificar os parâmetros do iniciador sbt em Settings/Preferences | Build, Execution, Deployment | Build Tools | sbt e a ação Find Usages (Alt+F7) agora procura símbolos em arquivos sbt.
A inspeção Unused declaration recebeu várias correções e melhorias. O IntelliJ IDEA agora pode detectar o uso de símbolos nos arquivos XML do seu projeto. A inspeção também diferencia entre referências a termos e referências a tipos, não marcando uma como em uso quando na verdade é a outra que está em uso. A inspeção Can be private também foi atualizada. Por exemplo, você não verá mais realce para definições de nível superior em planilhas e classes locais. Para chamadas recursivas, agora você verá um ícone de medianiz à esquerda da linha com a chamada.
Melhoramos o desempenho do realce do Scala 3 quando muitos parâmetros implícitos são importados e são necessários para analisar o código, por exemplo, quando a biblioteca Cats está sendo usada. O IntelliJ IDEA 2023.1 também apresenta muitas melhorias no suporte à sintaxe, como a geração automática adequada de métodos de substituição com cláusulas using
.
Se você usa realce baseado em compilador, até agora todas as importações têm sido marcadas como usadas. Porém, o Scala 3.3 introduziu uma nova opção de compilador, -Wunused:imports
. O IDE agora poderá identificar importações não utilizadas se seu projeto usar essa opção. Também corrigimos a ação de importação automática para Enums
.
O IntelliJ IDEA 2023.1 traz inúmeras correções e melhorias para os descompiladores do Scala 3 e Scala 2. A saída da descompilação do bytecode do Scala 2 e Scala 3 foi unificada e agora é mais fácil de ler.
Atualizamos a aba Flame Graph, introduzindo realce codificado por cores para as chamadas. Os métodos pertencentes ao projeto atualmente aberto agora são realçados em amarelo. Dessa forma, você pode diferenciar facilmente o código modificável para resolver um determinado problema de desempenho. Também reformulamos o esquema geral de cores da aba Flame Graph para torná-lo mais agradável aos olhos.
Para tornar o rastreamento de alterações nos arquivos mais conveniente, adicionamos dicas de cores à janela de ferramentas Structure. Os nomes dos objetos modificados agora ficarão azuis, e os nomes dos objetos recém-adicionados aparecerão na janela de ferramentas realçados em verde.
Para simplificar o processo de revisão do código dentro do IDE, reformulamos a janela de ferramentas Pull Request. Agora, ela apresenta uma aba dedicada para cada solicitação pull que você abre. A aba exibe instantaneamente a lista de arquivos alterados, mas agora fornece menos informações do que antes, permitindo que você se concentre melhor na tarefa atual. Agora também existe um botão dedicado para executar facilmente a ação considerada a mais relevante considerando o estado atual da solicitação pull.
Melhoramos a usabilidade do pop-up Branches. Por exemplo, ficou mais fácil navegar entre branches, pois eles são agrupados e armazenados em listas expansíveis.
O IntelliJ IDEA 2023.1 fornece complementação automática no pop-up Create New Branch. Assim que você começa a digitar um nome para seu novo branch, o IDE sugere prefixos relevantes com base nos nomes dos branches locais existentes.
Ao configurar um novo projeto Gradle, agora é possível selecionar a versão necessária do wrapper diretamente no assistente New Project. Expanda a seção Advanced Settings, desmarque Auto-select e especifique sua opção preferida. Você pode fazer com que o IDE memorize sua escolha habilitando Use these settings for future projects abaixo da combo Gradle version.
Ao importar um projeto, o IntelliJ IDEA 2023.1 agora pode detectar a toolchain do Gradle e definir o Java SDK correspondente nas configurações do módulo.
No IntelliJ IDEA 2023.1, é possível criar um atalho para iniciar a ação Run with coverage para o arquivo atualmente aberto, mesmo que a configuração de execução ainda não tenha sido criada. Para atribuir esse atalho, acesse Settings/Preferences | Keymap, procure a opção Run with Coverage context configuration e adicione uma nova combinação de teclas para ela.
No IntelliJ IDEA 2023.1, você pode filtrar classes na janela Coverage para se concentrar em classes e métodos atualizados recentemente que requerem atenção especial durante testes. Por padrão, você verá uma lista de classes com alterações que ainda não foram comitadas. A segunda opção de filtragem permite ocultar classes totalmente cobertas.
O IntelliJ IDEA Ultimate 2023.1 fornece suporte atualizado para navegação até mapeamentos de URL e funções de segurança para APIs introduzidas no Spring Security 6.
Na configuração de execução do Spring, o Gradle agora é a opção padrão para realizar a execução e build dos projetos. O IDE agora usa a configuração principal para gerar e executar o projeto usando o Gradle conforme definido em Settings/Preferences | Build, Execution, Deployment | Build Tools | Gradle.
Com o IntelliJ IDEA Ultimate 2023.1, você pode alterar e compartilhar configurações do Spring e JPA através de facetas personalizadas em File | Project Structure | Modules. Por exemplo, para compartilhar uma fonte de dados selecionada para o JPA dentro da sua equipe, agora você pode criar uma faceta do JPA e fazer commit das suas configurações no sistema de controle de versão adicionando um arquivo de módulo com a extensão *.iml.
O IntelliJ IDEA Ultimate 2023.1 torna possível executar consultas do MongoDB no console Database a partir de repositórios Spring e Micronaut Data. Para fazer isso, use a nova ação de intenção Run query in console na string de consulta. O IDE gerará as chamadas JavaScript apropriadas, incluindo parâmetros de solicitação adicionais, como sort
.
O IntelliJ IDEA Ultimate 2023.1 fornece uma variedade mais ampla de inspeções para código reativo. For example, the IDE now reports usages of transformation operators with the Mono<Void>
type described in the Reactor 3 Reference Guide.
Implementamos um novo plug-in dedicado que integra o Apache Dubbo, fornecendo a funcionalidade do framework como parte do suporte do IntelliJ IDEA para Spring. Você pode baixar esse plug-in no JetBrains Marketplace ou instalá-lo diretamente no IDE via Settings/Preferences | Plugins.
Se você definir metadados adicionais para APIs usando anotações Swagger 2.X em controladores Spring, agora o IntelliJ IDEA Ultimate inclui essas anotações ao gerar arquivos OpenAPI na caixa de diálogo de ações de URL ou na janela de ferramentas Endpoints.
Agora, é possível editar partes de especificações OpenAPI maiores em arquivos separados enquanto você navega facilmente entre eles. Além disso, o IDE fornece complementação de código e realce para esses arquivos da mesma forma que faz para o arquivo de especificação principal.
Com o IntelliJ IDEA Ultimate 2023.1, é possível executar solicitações GRPC de arquivos proto que contêm importações de arquivamentos .jar. Também melhoramos a complementação de código para corpos de solicitações, como para os tipos OneOf
e Map<K,V>
. Além disso, adicionamos a aba HTTP Client para endpoints Protobuf na janela de ferramentas Endpoints.
O IDE agora fornece todos os recursos de edição necessários para trabalhar com arquivos de configuração application.yaml no Ktor, incluindo complementação de código, realce e validação.
A aba Dashboard do nó do Docker Compose agora reúne logs de cada container do Docker Compose e os exibe num só lugar, atualizados em tempo real.
Agora, você pode se conectar facilmente ao Azure Container Registry. Acesse Settings/Preferences | Build, Execution, Deployment | Docker | Docker Registry e configure-o selecionando a opção Docker V2 no campo de entrada Registry.
:z
para associar volumes no SELinux Agora, você pode adicionar sinalizadores de configuração :z
a montagens de associação do Docker, permitindo conectar volumes a containers do Docker em estações de trabalho SELinux. Para habilitar essa funcionalidade, acesse Settings/Preferences | Advanced Settings | Docker.
O IntelliJ IDEA 2023.1 informa sobre os resultados das verificações de integridade do Docker. Agora, você pode ver estados de integridade dos containers do Docker em execução ao lado de seus nomes na janela de ferramentas Services. Além disso, para facilitar a análise rápida dos status, os containers que estão sendo iniciados e operando normalmente apresentam um pequeno ponto verde no ícone, enquanto os containers não íntegros são marcados em vermelho.
A funcionalidade Docker debug foi marcada como obsoleta. Em vez disso, para depurar seus aplicativos usando containers do Docker, use Run targets.
Para facilitar a criação de novos arquivos Kubernetes, adicionamos uma nova ação ao menu File | New. Depois de selecionar a opção New Kubernetes Resource, você verá um pop-up com uma lista dos tipos de recursos mais populares, como Pod, Deployment e ConfigMap, entre outros.
O IntelliJ IDEA Ultimate 2023.1 apresenta uma nova caixa de diálogo para criar Kubernetes Secrets. Para definir um novo Secret, você pode inserir dados de Key e Value manualmente ou especificar um arquivo cujo conteúdo será usado.
Quando você usa a ação View YAML para recursos de um cluster e faz qualquer alteração no arquivo aberto, o IntelliJ IDEA Ultimate agora realça todas as suas edições com marcas codificadas por cores na medianiz. Dessa forma, você pode ter certeza de que as alterações serão feitas nas partes necessárias do recurso antes de as aplicar de volta ao cluster. Além disso, usar o ícone Compare with Cluster abre uma janela de diff completa que buscará a versão atual do recurso do cluster e a comparará com a versão local.
O IntelliJ IDEA Ultimate 2023.1 refina a experiência do usuário para trabalhar com arquivos kubeconfig. Agora, você pode acessar facilmente um arquivo kubeconfig na janela Services e abri-lo no editor. Se você alterar um arquivo kubeconfig fora do IDE, o IntelliJ IDEA detectará a alteração e atualizará automaticamente a configuração na janela de ferramentas Services. Também são fornecidos realce e complementação de código para arquivos kubeconfig.
Agora, você pode atribuir atalhos para a maioria das ações do Kubernetes na janela Services, como Forward Ports, Delete Resource e Describe Resource, entre outros. Siga este caminho para definir seus atalhos personalizados: Settings/Preferences | Keymap | Plugins | Kubernetes.
Agora, quando convidados se conectam a uma sessão, seus clientes parecem mais com um IDE da JetBrains normal. Eles podem ver todos os itens que o host vê, incluindo os esmaecidos que somente o host pode acessar. Os guests podem ver claramente o que está indisponível e pedir aos hosts que implementem essas ações em seu nome.
Agora, os convidados podem solicitar permissões adicionais simplesmente clicando em um ícone de chave ao lado de um item indisponível. Os hosts não precisam determinar o acesso necessário desde o início e podem facilmente aprovar permissões extras de qualquer convidado em tempo real.
Projetos recentes agora são armazenados no host em vez de no cliente. Isso fornece informações precisas e atualizadas, mesmo que você se conecte de um cliente diferente. Também adicionamos mais opções úteis, como a seleção de qual versão do IDE usar no host.
Long-awaited Astro support has landed in IntelliJ IDEA 2023.1! Você pode obtê-lo através do nosso novo plug-in Astro, que pode ser instalado em Settings/Preferences | Plugins. Esse plug-in oferece funcionalidades básicas, incluindo realce de sintaxe, complementação de código com importações automáticas, refatorações, navegação, formatação correta e muito mais.
Adicionamos suporte para TypeScript em templates do Vue. Ele é habilitado quando você define o atributo lang
em uma tag script
para ts
. Anteriormente, JavaScript era sempre usado, ignorando o atributo lang
na tag script
. O IntelliJ IDEA agora fornece suporte para inline casting, estreitamento de tipos aprimorado e informações corretas sobre tipos inferidos na documentação rápida em templates Single-File Components (SFCs) do Vue.
O IntelliJ IDEA agora transformará automaticamente suas strings com aspas simples ou duplas em literais de template sempre que você digitar ${
. Isto funciona para strings brutas, bem como para propriedades JSX.
Neste lançamento, adicionamos suporte para opções de configuração, como complementação de nomes de classes personalizados na opção classAttributes
ou experimentais, como tailwindCSS.experimental.configFile
. Você pode definir essas opções de configuração em Settings/Preferences | Languages & Frameworks | Style Sheets | Tailwind CSS.