O que é o Java Runtime Environment (JRE)?

Pessoas trabalhando em um movimentado escritório em plano aberto

O que é JRE?

O Java Runtime Environment, ou JRE, é uma camada de software que é executada sobre o software do sistema operacional de um computador e fornece as bibliotecas de classes e outros recursos que um programa Java específico requer para ser executado.

O JRE é um dos três componentes inter-relacionados para desenvolver e executar programas Java. Os outros dois componentes são os seguintes:

  • O Java Development Kit, ou JDK, é um conjunto de ferramentas para desenvolver aplicações Java. Os desenvolvedores escolhem JDKs por versão Java e por pacote ou edição—Java Enterprise Edition (Java EE), Java Special Edition (Java SE) ou Java Mobile Edition (Java ME). Todo JDK sempre inclui um JRE compatível porque executar um programa Java faz parte do processo de desenvolvimento de um programa Java.

  • A máquina virtual Java, ou JVM, executa aplicações Java em tempo real. Cada JRE inclui um JRE padrão, mas os desenvolvedores podem escolher outro que atenda às necessidades específicas de recursos de suas aplicações.

O JRE combina o código Java criado usando o JDK com as bibliotecas necessárias para executá-lo em uma JVM e, em seguida, cria uma instância da JVM que executa o programa resultante. As JVMs estão disponíveis para múltiplos sistemas operacionais, e os programas criados com o JRE são executados em todos eles. Dessa forma, o Java Runtime Environment é o que permite que um programa Java seja executado em qualquer sistema operacional sem modificações.

Você pode baixar o JDK, incluindo um JRE compatível, da Oracle.

As mais recentes notícias de tecnologia, corroboradas por insights de especialistas.

Mantenha-se atualizado sobre as tendências mais importantes (e intrigantes) do setor em IA, automação, dados e muito mais com o boletim informativo Think. Consulte a Declaração de privacidade da IBM.

Agradecemos sua inscrição!

Sua assinatura será entregue em inglês. Você pode encontrar um link para cancelar a assinatura em todos os boletins informativos. Você pode gerenciar suas inscrições ou cancelar a inscrição aqui. Consulte nossa Declaração de privacidade da IBM para obter mais informações.

Como funciona o JRE?

O JDK e o JRE interagem entre si para criar um ambiente de tempo de execução sustentável que possibilita a execução perfeita de aplicações baseadas em Java em praticamente qualquer sistema operacional. Estes atributos compõem a arquitetura de tempo de execução do JRE:

ClassLoader

O Java ClassLoader carrega dinamicamente todas as classes necessárias para executar um programa Java. Como as classes Java só são carregadas na memória quando são necessárias, o JRE usa ClassLoaders para automatizar esse processo sob demanda.

Verificador de bytecode

O verificador de bytecode garante o formato e a precisão do código Java antes de passar para o interpretador. Se o código violar a integridade do sistema ou os direitos de acesso, a classe será considerada corrompida e não será carregada.

Intérprete

Após o bytecode ser carregado com sucesso, o interpretador Java cria uma instância da JVM que permite que o programa Java seja executado nativamente na máquina subjacente.

Desenvolvimento de aplicações

Venha conosco: desenvolvimento de aplicações para empresas na nuvem

Neste vídeo, o Dr. Peter Haumer explica como é o desenvolvimento atual das aplicações empresariais modernas na nuvem híbrida, demonstrando diferentes componentes e práticas, incluindo o IBM® Z Open Editor, o IBM Wazi e o Zowe. 

Em que consiste o JRE?

Além da máquina virtual Java, o JRE é composto por várias outras ferramentas e funcionalidades de software de suporte para você aproveitar ao máximo suas aplicações Java.

Soluções de implementação

Incluído como parte da instalação do JRE estão tecnologias de implementação como Java Web Start e plug-in Java, que simplificam a ativação de aplicações e proporcionam compatibilidade avançada com futuras atualizações Java.

Toolkits de desenvolvimento

O JRE também contém toolkits projetados para ajudar os desenvolvedores a melhorar sua interface do usuário. Alguns desses toolkits incluem:

  • Java 2D: uma interface de programação de aplicativos (API) usada para desenhar gráficos bidimensionais na linguagem Java. Os desenvolvedores podem criar interfaces de usuário avançadas, efeitos especiais, jogos e animações.

  • Abstract Window Toolkit (AWT): uma GUI (interface gráfica do usuário) usada para criar objetos, botões, barras de rolagem e janelas.

  • Swing: outra GUI leve que utiliza um rico conjunto de widgets para oferecer personalizações flexíveis.

Bibliotecas de integração

O Java Runtime Environment fornece diversas bibliotecas de integração para auxiliar os desenvolvedores na criação de conexões de dados perfeitas entre suas aplicações e serviços. Algumas dessas bibliotecas incluem:

  • Java IDL (CORBA): utiliza a Common Object Request Architecture para compatibilidade com objetos distribuídos escritos na linguagem de programação Java.

  • API Java Database Connectivity (JDBC): fornece ferramentas para que os desenvolvedores escrevam aplicação com acesso a bancos de dados de relacionamento remotos, arquivos simples e planilha.

  • Java Naming and Directory Interface (JNDI): uma interface de programação e serviço de diretório que ajuda os clientes a criar aplicações portáteis que podem buscar informações de bancos de dados usando convenções de nomenclatura.

Bibliotecas de linguagem e utilitários

O JRE inclui o java.lang. e java.util. pacotes que são fundamentais para o projeto de aplicações Java, controle de versão, gerenciamento e monitoramento de pacotes. Alguns desses pacotes incluem:

  • Collections Framework: uma arquitetura unificada composta por uma coleção de interfaces projetadas para melhorar o armazenamento e o processamento de dados de aplicações.

  • Utilitários simultâneos: um pacote de framework poderoso com utilitários de thread de alto desempenho.

  • API de preferências: uma API persistente leve e entre plataformas que permite que vários usuários no mesmo computador definam seu próprio grupo de preferências de {aplicação}.

  • Registro: um pacote que produz relatórios de registro, como falhas de segurança, erros de configuração e problemas de desempenho, para análise adicional.

  • Java Archive (JAR): um formato de arquivo independente de plataforma que permite que vários arquivos sejam agrupados no formato JAR, melhorando consideravelmente a velocidade do download e reduzindo o tamanho do arquivo.
Soluções relacionadas
IBM Enterprise Application Service for Java

Um serviço de locatário único, totalmente gerenciado, para desenvolver e entregar aplicações Java.

Explore os aplicativos em Java
Soluções de DevOps

Utilize softwares e ferramentas de DevOps para desenvolver, implementar e gerenciar aplicações nativas da nuvem em diversos dispositivos e ambientes.

Explore as soluções de DevOps
Serviços de desenvolvimento de aplicações empresariais

Com o desenvolvimento de aplicações na nuvem você só constrói uma única vez, itera rapidamente e implementa em qualquer lugar.

Serviços de desenvolvimento de aplicações
Dê o próximo passo

Os serviços de consultoria de desenvolvimento de aplicações da IBM® Cloud oferecem orientação de especialistas e soluções inovadoras para simplificar sua estratégia em relação à nuvem. Trabalhe com os especialistas em nuvem e desenvolvimento da IBM para modernizar, escalar e acelerar suas aplicações, trazendo resultados transformadores para os seus negócios.

Explore os serviços de desenvolvimento de aplicações Comece a criar com a IBM® Cloud sem custo