Publicado: Mar 22, 2022

O Amazon Corretto 18 já está disponível para o público geral. Esta versão é compatível com a versão OpenJDK 18 do recurso Java mais recente e está disponível para Linux, Windows e macOS. Baixe o Corretto 18 na página de downloads. O Amazon Corretto é uma distribuição gratuita, multiplataforma e pronta para produção do OpenJDK. O Corretto é distribuído pela Amazon sob uma licença de código aberto.

O OpenJDK 18 oferece um novo recurso de resolução de endereço da Internet, um Simple Web Server, uma API de Vetor atualizada, um novo @snippet Tag para JavaDoc, uma nova implementação do Core Reflection, uma mudança para UTF-8 como o conjunto de caracteres padrão (charset) das APIs Java padrão, uma segunda iteração da API de memória externa, avanços na correspondência de padrões para instruções switch e depreciação da finalização.

  • A nova Service Provider Interface (SPI) permite que os desenvolvedores especifiquem um resolvedor de endereço da Internet diferente do padrão incorporado na JVM. A principal vantagem é que ela atenuará um problema de bloqueio relacionado a uma chamada do sistema operacional que ocorre atualmente ao realizar a conversão de endereços da Internet. Isso será especialmente útil para aplicações que usam threads virtuais.
  • O Simple Web Server incluído no OpenJDK 18 fornecerá uma ferramenta de linha de comando para fornecer arquivos estáticos. Os desenvolvedores podem usá-lo para prototipagem, codificação ad-hoc e testes.
  • Uma API de Vetor foi introduzida inicialmente no OpenJDK 16. Ela foi aprimorado no OpenJDK 17 e foi aprimorada ainda mais no OpenJDK 18. A versão mais recente inclui suporte para a plataforma ARM Scalar Vector Extension (SVE) e melhora a performance das operações vetoriais.
  • Um novo recurso que permite ao desenvolvedor adicionar exemplos de código-fonte em JavaDocs foi adicionado. Usando a anotação @snippet, o desenvolvedor pode adicionar fragmentos de código à documentação.
  • O OpenJDK 18 contém uma atualização para a forma como a reflexão é implementada. A alteração move java.lang.reflect.Method, Constructor e Field para os identificadores do método java.lang.invoke, tornando os manipuladores do método a maneira subjacente como a reflexão é realizada.
  • O OpenJDK 18 usa UTF-8 como o conjunto de caracteres padrão das APIs Java padrão. Isso permite que as APIs funcionem de maneira mais previsível quando o atributo charset opcional não é transmitido para as APIs.
  • Com o OpenJDK 18, uma nova API foi introduzida para permitir que os desenvolvedores interoperem com código e dados externos à JVM, sem o uso da Java Native Interface (JNI). Este é um acompanhamento de uma API de incubação lançada no OpenJDK 17 e adiciona várias melhorias à iteração anterior.
  • Uma segunda versão de demonstração da Correspondência de padrões para instruções switch está incluída no OpenJDK 18. O lançamento inicial desse recurso foi incluído no OpenJDK 17. Com o OpenJDK 18, ele foi aprimorado, permitindo que padrões apareçam em rótulos de caso, permitindo a introdução de recursos anteriormente novos e permitindo o comportamento de nulidade definido pelo desenvolvedor.
  • A finalização será removida em uma versão futura do JDK e, com o OpenJDK 18, o recurso será suspenso.

Uma lista desses recursos com mais detalhes pode ser encontrada aqui.