Qu'est-ce que le JRE (Java Runtime Environment) ?
Découvrez ce que fait l'environnement JRE (Java Runtime Environment) et comment il fonctionne avec d'autres composants de la plateforme Java pour exécuter des applications Java.
S'abonner au bulletin d'information IBM
arrière-plan noir et bleu
Qu'est-ce que le JRE ?

Java Runtime Environment, ou JRE, est une couche logicielle qui s'exécute sur le logiciel du système d'exploitation d'un ordinateur et fournit les bibliothèques de classes  et les autres ressources dont un programme Java a besoin pour fonctionner.

JRE est l'un des trois composants interdépendants qui permettent de développer et d'exécuter des programmes Java. Les deux autres composants sont les suivants :

  • Le kit Java Development Kit, ou JDK, un ensemble d'outils qui permet de développer des applications Java. Les développeurs choisissent des kits JDK en fonction de la version de Java et du package ou de l'édition Java Enterprise Edition (Java EE), Java Special Edition (Java SE) ou Java Mobile Edition (Java ME). Chaque kit JDK comprend toujours un environnement JRE compatible, car l'exécution d'un programme Java fait partie du processus de développement d'un programme Java.

  • La machine virtuelle Java, ou JVM : elle exécute les applications Java en direct. Chaque JRE comprend une JVM par défaut, mais les développeurs sont libres d'en choisir une autre qui répond aux besoins en ressources de leurs applications.

Le JRE combine le code Java créé à l'aide du JDK avec les bibliothèques requises pour l'exécuter sur une machine virtuelle Java, puis crée une instance de cette machine virtuelle Java qui exécute le programme résultant. Des machines JVM sont disponibles pour plusieurs systèmes d'exploitation. Les programmes créés avec l'environnement JRE sont exécutés sur tous ces systèmes. Ainsi, Java Runtime Environment est l'environnement qui permet à un programme Java de s'exécuter dans n'importe quel système d'exploitation sans modification.

Vous pouvez télécharger le JDK et un JRE compatible sur le site d'Oracle (lien externe à ibm.com).

Fonctionnement de JRE

Le kit JDK et l'environnement JRE interagissent l'un avec l'autre pour créer un environnement d'exécution durable qui permet d'exécuter facilement des applications Java dans pratiquement tous les systèmes d'exploitation. L'architecture d'exécution de l'environnement JRE se compose des éléments suivants :

ClassLoader

Java ClassLoader charge dynamiquement toutes les classes nécessaires à l'exécution d'un programme Java. Étant donné que les classes Java ne sont chargées en mémoire que lorsqu'elles sont nécessaires, l'environnement JRE utilise des ClassLoaders pour automatiser ce processus à la demande.

Vérificateur de bytecode

Le vérificateur de bytecode garantit le format et l'exactitude du code Java avant sa transmission à l'interpréteur. Si le code viole l'intégrité du système ou les droits d'accès, la classe est considérée comme endommagée et n'est pas chargée.

Interpréteur

Une fois le bytecode chargé, l'interpréteur Java crée une instance de la machine virtuelle Java qui permet au programme Java d'être exécuté en natif sur la machine sous-jacente.

Composants de l'environnement JRE

Outre la machine virtuelle Java, l'environnement JRE est composé de divers autres outils logiciels et fonctions connexes pour tirer le meilleur parti de vos applications Java.

Solutions de déploiement

L'installation de l'environnement JRE comprend des technologies de déploiement telles que Java Web Start et Java Plugin qui simplifient l'activation des applications et fournissent une prise en charge avancée des futures mises à jour Java.

Kits d'outils de développement

L'environnement JRE contient également des kits d'outils qui permettent aux développeurs d'améliorer leur interface utilisateur. Ces kits d'outils comprennent entre autres :

  • Java 2D :  une API (Application Programming Interface) utilisée pour dessiner des graphiques 2D en langage Java. Les développeurs peuvent créer des interfaces utilisateur enrichies, des effets spéciaux, des jeux et des animations.

  • Abstract Window Toolkit (AWT) :  une interface graphique utilisée pour créer des objets, des boutons, des barres de défilement et des fenêtres.

  • Swing :  une autre interface graphique simple qui utilise un ensemble enrichi de widgets pour offrir des personnalisations flexibles et conviviales.

Bibliothèques d'intégration

L'environnement JRE fournit un certain nombre de bibliothèques d'intégration pour permettre aux développeurs de créer des connexions de données fluides entre leurs applications et leurs services. Ces bibliothèques comprennent entre autres :

  • Java IDL (CORBA) :  utilise l'architecture CORA (Common Object Request Architecture) pour prendre en charge les objets distribués écrits dans le langage de programmation Java.

  • API Java Database Connectivity (JDBC) :  fournit aux développeurs des outils pour écrire des applications pouvant accéder à des bases de données relationnelles distantes, à des fichiers plats et à des feuilles de calcul.

  • Java Naming and Directory Interface (JNDI) :  une interface de programmation et un service d'annuaire qui permettent aux clients de créer des applications portables capables d'extraire des informations de bases de données à l'aide de conventions de dénomination.

Bibliothèques de langage et d'utilitaires

L'environnement JRE inclut les packages java.lang et java.util. Ils sont fondamentaux pour concevoir des applications Java, gérer les versions des packages et gérer et surveiller les packages. Ils comprennent entre autres :

  • Collections Framework :  une architecture unifiée constituée d'un ensemble d'interfaces qui améliorent le stockage et le traitement des données d'application.

  • Concurrency Utilities :  un package d'infrastructure préfabriquée puissant avec des utilitaires de threading hautes performances.

  • Preferences API :  une API persistante légère et multiplateforme qui permet à plusieurs utilisateurs d'une même machine de définir leur propre groupe de préférences pour les applications.

  • Logging :  produit des rapports de journal, tels que les défaillances de sécurité, les erreurs de configuration et les problèmes de performances, pour permettre une analyse plus approfondie.

  • Java Archive (JAR) :  un format de fichier indépendant de la plateforme qui permet de regrouper plusieurs fichiers au format JAR afin d'améliorer considérablement la vitesse de téléchargement et de réduire la taille du fichier.
Solutions connexes
Créer et moderniser les applications

Fournissez les compétences et les outils dont votre équipe a besoin pour développer l'innovation et faire avancer votre entreprise.

Découvrir la création et la modernisation des applications
OpenJDK et IBM Runtimes for Business

IBM Runtimes for Business fournit le support pour les environnements d'exécution Java open source, ainsi que des fonctions de surveillance et de gestion des applications Java.

Découvrir OpenJDK et IBM Runtimes for Business
IBM® WebSphere® Hybrid Edition

Découvrez comment conduire le développement cloud natif, la modernisation des applications et la prise en charge des applications existantes avec WebSphere® Hybrid Edition.

Découvrir IBM® WebSphere® Hybrid Edition
Ressources Qu'est-ce que Java ?

Découvrez pourquoi Java est toujours la plateforme de développement la plus utilisée et comment elle accélère les projets et prend en charge un large éventail de technologies émergentes.

Qu'est-ce que Java Spring Boot ?

Découvrez comment Java Spring Boot simplifie le développement des applications Web et des microservices avec Java Spring Framework.

Pour aller plus loin

Pour la plupart des organisations, Java reste un élément essentiel du développement d'applications et constitue une base solide pour la création de solutions portables et évolutives. Découvrez OpenJDK et IBM Runtimes for Business, deux outils qui offrent un support commercial fiable et rentable pour la mise en œuvre, la surveillance et la gestion des applications Java.

En savoir plus sur OpenJDK et IBM Runtimes for Business