web-dev-qa-db-fra.com

Où est JRE 11?

MISE À JOUR:

(pour être plus clair )

Vous pouvez trouver JRE 8 , JRE 9 et JRE 1 sur le site officiel d'Oracle (cliquez sur chacun). mais où est JRE 11 ?!

En outre, JDK 11 n'inclut pas de JRE. Je m'attendais à ce que JRE soit installé avec JDK.

Les utilisateurs finaux de nos applications doivent-ils installer JDK?


Version ORIGINALE de la question:

J'ai téléchargé et installé Oracle JDK 11 à partir de son site officiel . J'ai installé à la fois ..._linux-x64_bin.rpm et ..._windows-x64_bin.exe (le premier sur une machine Linux et le second sur une machine Windows). Mais j'ai vu une chose inattendue! Où est JRE?

Il s’agit d’un instantané du chemin d’installation sous CentOS 7. Comme vous pouvez le constater, il n’existe pas de dossier jre:

# ls /usr/Java/jdk-11.0.1/
bin  conf  include  jmods  legal  lib  README.html  release

Même cliché sur Oracle JDK 8 (Voir le dossier jre):

# ls /usr/Java/jdk1.8.0_191-AMD64/
bin             lib          src.Zip
COPYRIGHT       LICENSE      THIRDPARTYLICENSEREADME-JAVAFX.txt
include         man          THIRDPARTYLICENSEREADME.txt
javafx-src.Zip  README.html
jre             release

Mêmes instantanés sur une machine Windows:

> dir /b "C:\Program Files\Java\jdk-11.0.1" 
bin                                           
conf                                          
COPYRIGHT                                     
include                                       
jmods                                         
legal                                         
lib                                           
README.html                                   
release                                                                                     

> dir /b "C:\Program Files\Java\jdk1.8.0_181"  
bin                                           
COPYRIGHT                                     
include                                       
javafx-src.Zip                                
jre                                           
lib                                           
LICENSE                                       
README.html                                   
release                                       
src.Zip                                       
THIRDPARTYLICENSEREADME-JAVAFX.txt            
THIRDPARTYLICENSEREADME.txt 

Sur la machine Windows, il existe également deux autres différences entre JDK 8 et JDK 11.

  1. Un JRE autonome à côté de JDK comme vous pouvez le voir:

    > dir /b "C:\Program Files\Java"            
    jdk-11.0.1   
    jdk1.8.0_181 
    jre1.8.0_181 
    
  2. Dans le chemin C:\Program Files (x86)\Common Files\Oracle\Java:

    > dir "C:\Program Files (x86)\Common Files\Oracle\Java"                                                                   
    ...                                                                                                                   
    ...                14 Java.settings.cfg                                                                  
    ...    <JUNCTION>     javapath [C:\Program Files (x86)\Common Files\Oracle\Java\javapath_target_3015921] 
    ...    <DIR>          javapath_target_3015921 
    ...
    

    Comme vous le voyez, javapath (dans la variable d’environnement PATH) pointe sur javapath_target_3015921. Ce dossier contient 3 exécutables de JDK 8 (qui ne sont pas link s!):

    > dir /b "C:\Program Files (x86)\Common Files\Oracle\Java\javapath" 
    Java.exe                         
    javaw.exe                        
    javaws.exe 
    

Enfin, j'ai cherché sur le Web pour trouver un JRE autonome et découvert qu'il n'existe pas!

Les utilisateurs finaux de nos programmes doivent-ils installer JDK?

14
Mir-Ismaili

La structure entière avec Java 11 a changé. Java est maintenant une plate-forme modulaire sur laquelle vous pouvez créer votre propre distribution "JRE" avec spécifiquement les modules nécessaires à l'exécution de votre application.

Les notes de version sur https://www.Oracle.com/technetwork/Java/javase/11-relnote-issues-5012449.html contiennent la phrase suivante:

Dans cette version, JRE ou Server JRE n'est plus proposé. Seul le JDK est offert. Les utilisateurs peuvent utiliser jlink pour créer des runtimes personnalisés plus petits.

Documentation sur jlink: https://docs.Oracle.com/en/Java/javase/11/tools/jlink.html

Et un autre article à ce sujet: https://medium.com/codefx-weekly/is-jlink-the-future-1d8cb45f6306

16
dunni