Compartilhar via


Notas sobre a versão do Microsoft Build do OpenJDK

Este artigo lista as correções contidas nas versões do Microsoft Build de pacotes OpenJDK e os aprimoramentos específicos da Microsoft cuja mesclagem upstream está pendente.

Problemas conhecidos

OpenJDK 17

  • Ao executar builds x64 (musl) do Alpine no Alpine Linux 3.19.0 ou posterior, não há suporte para SecureDirectoryStream.

OpenJDK 11

  • Ao executar builds x64 (musl) do Alpine no Alpine Linux 3.19.0 ou posterior, não há suporte para SecureDirectoryStream.

OpenJDK 21

OpenJDK 21.0.7

Aprimoramentos/Correções Adicionais

  • Backport do JDK-8350609: limpeza do opcode desconhecido de desenrolamento (0xB) para Windows
  • Sugestão de seleção de GPU ativada em builds do Windows usando NvOptimusEnablement e AmdPowerXpressRequestHighPerformance
    • Sugestões de driver exportadas pela JVM para preferir a GPU de alto desempenho (NVIDIA/AMD)
    • Útil em ambientes como Minecraft, IDEs ou ferramentas de ML para garantir a utilização da GPU

OpenJDK 21.0.6

Aprimoramentos/Correções Adicionais

  • Backport de JDK-8338136: o hotspot deve dar suporte a múltiplos tamanhos de páginas grandes no Windows
  • Backport de JDK-8345296: AArch64: a máquina virtual falha com SIGILL quando prctl está desativado
  • Backport de JDK-8335977: a desotimização falha com a declaração "o objeto já deve estar realocado"
  • Backport de JDK-8340454: o C2 EA gera uma asserção com "o Phi redutível anterior não é mais redutível antes do SUT"

OpenJDK 21.0.5

Aprimoramentos

  • Foram removidas as chamadas a APIs não documentadas do Windows (NtCreateKeyedEvent, NtReleaseKeyedEvent, NtWaitForKeyedEvent).
  • Backport de JDK-8334475: UnsafeIntrinsicsTest.java#ZGenerationalDebug assert(!assert_on_failure) falhou: tem bits de ordem baixa definidos.

OpenJDK 21.0.4

Aprimoramentos

  • Permite que o Hotspot use processadores em todos os grupos de processadores do Windows no Windows 11/Windows Server 2022 e posterior.

OpenJDK 21.0.3

Aprimoramentos

  • Inclui um novo recurso (consulte JDK-8287061 e JDK-8289943) para aprimorar o desempenho da Análise de Escape aumentando o número de oportunidades de Substituição Escalar. Esse recurso está habilitado por padrão. Para desabilitá-lo, os desenvolvedores devem usar os seguintes sinalizadores JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

  • Inclui um novo evento JFR para acompanhar a Utilização da Fila do Compilador (um backport do JDK-8317562).

OpenJDK 21.0.2

Aprimoramentos

  • Inclui um novo recurso (consulte JDK-8287061 e JDK-8289943) para aprimorar o desempenho da Análise de Escape aumentando o número de oportunidades de Substituição Escalar. Esse recurso está habilitado por padrão. Para desabilitá-lo, os desenvolvedores devem usar os seguintes sinalizadores JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

  • Inclui um novo evento JFR para acompanhar a Utilização da Fila do Compilador (um backport do JDK-8317562).

OpenJDK 21.0.1

Aprimoramentos

  • Inclui um novo recurso (consulte JDK-8287061 e JDK-8289943) para aprimorar o desempenho da Análise de Escape aumentando o número de oportunidades de Substituição Escalar. Esse recurso está habilitado por padrão. Para desabilitá-lo, os desenvolvedores devem usar os seguintes sinalizadores JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

Problemas conhecidos

  • Os binários AArch64 não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 21.0.0

Aprimoramentos

  • Inclui um novo recurso (consulte JDK-8287061 e JDK-8289943) para aprimorar o desempenho da Análise de Escape aumentando o número de oportunidades de Substituição Escalar. Esse recurso está habilitado por padrão. Para desabilitá-lo, os desenvolvedores devem usar os seguintes sinalizadores JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

Problemas conhecidos

  • Os binários AArch64 não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 17

OpenJDK 17.0.15

Aprimoramentos/Correções Adicionais

  • Backport do JDK-8350609: limpeza do opcode desconhecido de desenrolamento (0xB) para Windows

OpenJDK 17.0.14

Aprimoramentos/Correções Adicionais

  • Backport de JDK-8338136: o hotspot deve dar suporte a múltiplos tamanhos de páginas grandes no Windows
  • Backport de JDK-8345296: AArch64: a máquina virtual falha com SIGILL quando prctl está desativado
  • Backport de JDK-8335977: a desotimização falha com a declaração "o objeto já deve estar realocado"
  • Backport de JDK-8340454: o C2 EA gera uma asserção com "o Phi redutível anterior não é mais redutível antes do SUT"

OpenJDK 17.0.13

Aprimoramentos

  • Foram removidas as chamadas a APIs não documentadas do Windows (NtCreateKeyedEvent, NtReleaseKeyedEvent, NtWaitForKeyedEvent).

OpenJDK 17.0.12

Aprimoramentos

  • Permite que o Hotspot use processadores em todos os grupos de processadores do Windows no Windows 11/Windows Server 2022 e posterior.
  • Desabilitar as coleções preventivas G1 por padrão.

OpenJDK 17.0.11

Aprimoramentos

  • Inclui um novo recurso (consulte JDK-8287061 e JDK-8289943) para aprimorar o desempenho da Análise de Escape aumentando o número de oportunidades de Substituição Escalar. Esse recurso está habilitado por padrão. Para desabilitá-lo, os desenvolvedores devem usar os seguintes sinalizadores JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

  • Adicionado suporte para arquivos SST como KeyStores no Windows (consulte JDK-8306688),que pode ser habilitado usando a seguinte propriedade:

    -Dsun.security.mscapi.enableSST=true

OpenJDK 17.0.10

Aprimoramentos

  • Inclui um novo recurso (consulte JDK-8287061 e JDK-8289943) para aprimorar o desempenho da Análise de Escape aumentando o número de oportunidades de Substituição Escalar. Esse recurso está habilitado por padrão. Para desabilitá-lo, os desenvolvedores devem usar os seguintes sinalizadores JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

  • Adicionado suporte para arquivos SST como KeyStores no Windows (consulte JDK-8306688),que pode ser habilitado usando a seguinte propriedade:

    -Dsun.security.mscapi.enableSST=true

OpenJDK 17.0.9

Aprimoramentos

  • Inclui um novo recurso (consulte JDK-8287061 e JDK-8289943) para aprimorar o desempenho da Análise de Escape aumentando o número de oportunidades de Substituição Escalar. Esse recurso está habilitado por padrão. Para desabilitá-lo, os desenvolvedores devem usar os seguintes sinalizadores JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

  • Adicionado suporte para arquivos SST como KeyStores no Windows (consulte JDK-8306688),que pode ser habilitado usando a seguinte propriedade:

    -Dsun.security.mscapi.enableSST=true

  • Backport do provedor JDK-8303607 SunMSCAPI vaza memória e chaves

Problemas conhecidos

  • Os binários AArch64 não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 17.0.8

Aprimoramentos

  • Inclui um novo recurso (consulte JDK-8287061 e JDK-8289943) para aprimorar o desempenho da Análise de Escape aumentando o número de oportunidades de Substituição Escalar. Este recurso agora está habilitado por padrão. Para desabilitá-lo, os desenvolvedores precisam usar o seguinte sinalizador JVM:

    -XX:-ReduceAllocationMerges

Problemas conhecidos

  • Os binários AArch64 não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 17.0.7

Aprimoramentos

  • Inclui um recurso experimental para aprimorar o desempenho da Análise de Escape aumentando o número de oportunidades de Substituição Escalar. Para habilitar esse recurso, os desenvolvedores precisam usar os seguintes sinalizadores JVM:

    -XX:+UnlockExperimentalVMOptions -XX:+ReduceAllocationMerges

Problemas conhecidos

  • Os binários AArch64 não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 17.0.6

Aprimoramentos

  • Inclui um recurso experimental para aprimorar o desempenho da Análise de Escape aumentando o número de oportunidades de Substituição Escalar. Para habilitar esse recurso, os desenvolvedores precisam usar os seguintes sinalizadores JVM:

    -XX:+UnlockExperimentalVMOptions -XX:+ReduceAllocationMerges

Problemas conhecidos

  • Os binários não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 17.0.5

Aprimoramentos

  • Adicionado um recurso experimental para aprimorar o desempenho da Análise de Escape aumentando o número de oportunidades de Substituição Escalar. Para habilitar esse recurso, os desenvolvedores precisam usar os seguintes sinalizadores JVM:

    -XX:+UnlockExperimentalVMOptions -XX:+ReduceAllocationMerges

Problemas conhecidos

  • Os binários não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 17.0.4.1

Problemas conhecidos

  • Os binários não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 17.0.4

Problemas conhecidos

  • Os binários não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 17.0.3

Problemas conhecidos

  • Os binários não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 17.0.2

Problemas conhecidos

  • Os binários não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.
  • O pacote RPM pode não ser atualizado automaticamente. Execute yum install msopenjdk-17-17.0.2+8_LTS-1 para forçar a atualização para a versão mais recente.

OpenJDK 17.0.1

Problemas conhecidos

  • Os binários para AArch64 não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.
  • O pacote RPM pode não ser atualizado automaticamente. Execute yum install msopenjdk-17-17.0.1+12_LTS-1 para forçar a atualização para a versão mais recente.

OpenJDK 17.0.0

OpenJDK 11

OpenJDK 11.0.27

Aprimoramentos/Correções Adicionais

  • Não há aprimoramentos/correções adicionais.

OpenJDK 11.0.26

Aprimoramentos/Correções Adicionais

  • Backport de JDK-8335977: a desotimização falha com a declaração "o objeto já deve estar realocado"
  • Backport de JDK-8340454: o C2 EA gera uma asserção com "o Phi redutível anterior não é mais redutível antes do SUT"

OpenJDK 11.0.25

Aprimoramentos

  • Permite que o Hotspot use processadores em todos os grupos de processadores do Windows no Windows 11/Windows Server 2022 e posterior.

OpenJDK 11.0.24

Aprimoramentos

  • Permite que o Hotspot use processadores em todos os grupos de processadores do Windows no Windows 11/Windows Server 2022 e posterior.

OpenJDK 11.0.23

Aprimoramentos

  • Inclui um novo recurso (consulte JDK-8287061 e JDK-8289943) para aprimorar o desempenho da Análise de Escape aumentando o número de oportunidades de Substituição Escalar. Esse recurso está habilitado por padrão. Para desabilitá-lo, os desenvolvedores devem usar os seguintes sinalizadores JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

  • Adicionado suporte para arquivos SST como KeyStores no Windows (consulte JDK-8306688),que pode ser habilitado usando a seguinte propriedade:

    -Dsun.security.mscapi.enableSST=true

  • Backports dos seguintes aprimoramentos e correções de bug:

    • JDK-8250902 Implementar MD5 Intrínsecos em x86 – Sistema de Bugs Java
    • Gravador de Voo do JDK
      • JDK-8226897 Fornecer idade do objeto com evento JFR OldObjectSample
      • JDK-8232594 Tornar a saída da duração do comando JFR mais amigável
      • JDK-8216041 Desotimização da solicitação de evento
      • JDK-8216995 Limpar a linha de comando JFR
      • JDK-8217089 Instalar componentes da interface do sistema operacional para uma inicialização aprimorada

Problemas conhecidos

  • Os binários para macOS/AArch64 não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 11.0.22

Aprimoramentos

  • Inclui um novo recurso (consulte JDK-8287061 e JDK-8289943) para aprimorar o desempenho da Análise de Escape aumentando o número de oportunidades de Substituição Escalar. Esse recurso está habilitado por padrão. Para desabilitá-lo, os desenvolvedores devem usar os seguintes sinalizadores JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

  • Adicionado suporte para arquivos SST como KeyStores no Windows (consulte JDK-8306688),que pode ser habilitado usando a seguinte propriedade:

    -Dsun.security.mscapi.enableSST=true

  • Backports dos seguintes aprimoramentos e correções de bug:

    • JDK-8250902 Implementar MD5 Intrínsecos em x86 – Sistema de Bugs Java
    • Gravador de Voo do JDK
      • JDK-8226897 Fornecer idade do objeto com evento JFR OldObjectSample
      • JDK-8232594 Tornar a saída da duração do comando JFR mais amigável
      • JDK-8216041 Desotimização da solicitação de evento
      • JDK-8216995 Limpar a linha de comando JFR
      • JDK-8217089 Instalar componentes da interface do sistema operacional para uma inicialização aprimorada

Problemas conhecidos

  • Os binários para macOS/AArch64 não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 11.0.21

Aprimoramentos

  • Inclui um novo recurso (consulte JDK-8287061 e JDK-8289943) para aprimorar o desempenho da Análise de Escape aumentando o número de oportunidades de Substituição Escalar. Esse recurso está habilitado por padrão. Para desabilitá-lo, os desenvolvedores devem usar os seguintes sinalizadores JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

  • Adicionado suporte para arquivos SST como KeyStores no Windows (consulte JDK-8306688),que pode ser habilitado usando a seguinte propriedade:

    -Dsun.security.mscapi.enableSST=true

  • Backports dos seguintes aprimoramentos e correções de bug:

    • JDK-8250902 Implementar MD5 Intrínsecos em x86 – Sistema de Bugs Java
    • Gravador de Voo do JDK
      • JDK-8226897 Fornecer idade do objeto com evento JFR OldObjectSample
      • JDK-8232594 Tornar a saída da duração do comando JFR mais amigável
      • JDK-8216041 Desotimização da solicitação de evento
      • JDK-8216995 Limpar a linha de comando JFR
      • JDK-8217089 Instalar componentes da interface do sistema operacional para uma inicialização aprimorada
    • JDK-8303607 O provedor SunMSCAPI vaza a memória e as chaves

Problemas conhecidos

  • Os binários para AArch64 não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 11.0.20.1

Aprimoramentos

  • Inclui um novo recurso (consulte JDK-8287061 e JDK-8289943) para aprimorar o desempenho da Análise de Escape aumentando o número de oportunidades de Substituição Escalar. Esse recurso está habilitado por padrão. Para desabilitá-lo, os desenvolvedores precisam usar o seguinte sinalizador JVM:

    -XX:-ReduceAllocationMerges

  • Backports dos seguintes aprimoramentos e correções de bug:

    • JDK-8250902 Implementar MD5 Intrínsecos em x86 – Sistema de Bugs Java
    • Gravador de Voo do JDK
      • JDK-8226897 Fornecer idade do objeto com evento JFR OldObjectSample
      • JDK-8232594 Tornar a saída da duração do comando JFR mais amigável
      • JDK-8216041 Desotimização da solicitação de evento
      • JDK-8216995 Limpar a linha de comando JFR
      • JDK-8217089 Instalar componentes da interface do sistema operacional para uma inicialização aprimorada

Problemas conhecidos

  • Os binários para AArch64 não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 11.0.20

Aprimoramentos

  • Inclui um novo recurso (consulte JDK-8287061 e JDK-8289943) para aprimorar o desempenho da Análise de Escape aumentando o número de oportunidades de Substituição Escalar. Este recurso agora está habilitado por padrão. Para desabilitá-lo, os desenvolvedores precisam usar o seguinte sinalizador JVM:

    -XX:-ReduceAllocationMerges

  • Backports dos seguintes aprimoramentos e correções de bug:

    • JDK-8250902 Implementar MD5 Intrínsecos em x86 – Sistema de Bugs Java
    • Gravador de Voo do JDK
      • JDK-8226897 Fornecer idade do objeto com evento JFR OldObjectSample
      • JDK-8232594 Tornar a saída da duração do comando JFR mais amigável
      • JDK-8216041 Desotimização da solicitação de evento
      • JDK-8216995 Limpar a linha de comando JFR
      • JDK-8217089 Instalar componentes da interface do sistema operacional para uma inicialização aprimorada

Problemas conhecidos

  • Os binários para AArch64 não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 11.0.19

Aprimoramentos

  • Inclui um recurso experimental para aprimorar o desempenho da Análise de Escape aumentando o número de oportunidades de Substituição Escalar. Para habilitar esse recurso, os desenvolvedores precisam usar os seguintes sinalizadores JVM:

    -XX:+UnlockExperimentalVMOptions -XX:+ReduceAllocationMerges

  • Backports dos seguintes aprimoramentos e correções de bug:

    • JDK-8250902 Implementar MD5 Intrínsecos em x86 – Sistema de Bugs Java
    • JFR
      • JDK-8226897 Fornecer idade do objeto com o evento JFR OldObjectSample – Sistema de Bugs java
      • JDK-8232594 Tornar a saída da duração do comando JFR mais amigável – Sistema de Bugs java
      • JDK-8216041 [Solicitação de Evento] – Desotimização – Sistema de Bugs java

Problemas conhecidos

  • Os binários para AArch64 não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 11.0.18

Aprimoramentos

  • Inclui um recurso experimental para aprimorar o desempenho da Análise de Escape aumentando o número de oportunidades de Substituição Escalar. Para habilitar esse recurso, os desenvolvedores precisam usar os seguintes sinalizadores JVM:

    -XX:+UnlockExperimentalVMOptions -XX:+ReduceAllocationMerges

  • Backports dos seguintes aprimoramentos e correções de bug:

    • JDK-8250902 Implementar MD5 Intrínsecos em x86 – Sistema de Bugs Java
    • JFR
      • JDK-8226897 Fornecer idade do objeto com o evento JFR OldObjectSample – Sistema de Bugs java
      • JDK-8232594 Tornar a saída da duração do comando JFR mais amigável – Sistema de Bugs java
      • JDK-8216041 [Solicitação de Evento] – Desotimização – Sistema de Bugs java

Problemas conhecidos

  • Os binários não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 11.0.17

Aprimoramentos

  • Adicionado um recurso experimental para aprimorar o desempenho da Análise de Escape aumentando o número de oportunidades de Substituição Escalar. Para habilitar esse recurso, os desenvolvedores precisam usar os seguintes sinalizadores JVM:

    -XX:+UnlockExperimentalVMOptions -XX:+ReduceAllocationMerges

Problemas conhecidos

  • Os binários não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 11.0.16.1

Problemas conhecidos

  • Os binários não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 11.0.16

Problemas conhecidos

  • Os binários não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 11.0.15

Problemas conhecidos

  • Os binários não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 11.0.14.1

Aprimoramentos

  • Backport da porta JEP 391 macOS/AArch64
  • Backport da porta JEP 386 Alpine Linux

Problemas conhecidos

  • Os binários não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 11.0.14

Aprimoramentos

  • Backport da porta JEP 391 macOS/AArch64
  • Backport da porta JEP 386 Alpine Linux

Problemas conhecidos

  • Os binários não têm arquivos CDS padrão (JEP 341). Execute java -Xshare:dump para produzi-los após a instalação.

OpenJDK 11.0.13

OpenJDK 11.0.12

Aprimoramentos

OpenJDK 11.0.11

Lista de correções de segurança e outras correções no OpenJDK 11.0.11

Aprimoramentos

  • JDK-8250902 Implementar MD5 Intrínsecos em x86 – Sistema de Bugs Java

Fornecer comentários sobre o Build do OpenJDK da Microsoft

Envie-nos seus comentários, pensamentos e ideias para nos ajudar a melhorar o Microsoft Build do OpenJDK. Visite nossa página de discussões do OpenJDK no GitHub para nos enviar seus comentários.

Java e OpenJDK são marcas ou marcas registradas da Oracle e/ou de suas afiliadas.

Outras versões

OpenJDK 16.0.2

Aprimoramentos