Em um esforço para melhorar o desempenho do Java em ambientes de nuvem, está em andamento uma proposta do OpenJDK para reduzir o tamanho do JDK (Java Development Kit) em cerca de 25%. O plano prevê permitir a jlink
ferramenta para construir imagens de tempo de execução personalizadas sem usar os arquivos JMOD do JDK.
A JDK Enhancement Proposal (JEP), intitulada Linking Run-Time Images without JMODs, é motivada pelo desejo de reduzir o tamanho instalado do JDK no sistema de arquivos em ambientes de nuvem, onde imagens de contêiner que incluem um JDK instalado são frequentemente copiadas. a rede a partir de registros de contêineres. A redução do tamanho do JDK melhoraria a eficiência destas operações, afirma a proposta. O PEC observa que permitir a jlink
A ferramenta para criar imagens de tempo de execução personalizadas sem usar os arquivos JMOD do JDK deve ser habilitada quando o JDK for compilado e não será habilitada por padrão. Alguns fornecedores de JDK podem optar por não ativá-lo.
A proposta explica que um JDK completo e instalado possui dois componentes principais: uma imagem de tempo de execução, que serve como sistema executável de tempo de execução Java, e um conjunto de módulos empacotados, no formato JMOD, para cada módulo na imagem de tempo de execução. Arquivos JMOD são usados pelo jlink
ferramenta ao criar imagens de tempo de execução personalizadas. A imagem de tempo de execução em um JDK completo foi criada a partir desses arquivos JMOD via jlink
. Conseqüentemente, cada arquivo de classe, biblioteca nativa, arquivo de configuração e outros recursos na imagem de tempo de execução também estão presentes em um dos arquivos JMOD, o que é indiscutivelmente um “enorme desperdício de espaço”, de acordo com a proposta.