Переход на Java 11 с Java 8 - PullRequest
       25

Переход на Java 11 с Java 8

0 голосов
/ 03 ноября 2018

Я скачал и установил oraclejdk11 с официального сайта oracle и изменил переменную PATH & JAVA_HOME в системной переменной среды на windows

C: \ Users \ Aviral> javac -version

javac 11.0.1

C: \ Users \ Aviral> java -version

Java-версия "1.8.0_102"

Java (TM) SE Runtime Environment (сборка 1.8.0_102-b14)
Java HotSpot (TM) 64-разрядная серверная виртуальная машина (сборка 25.102-b14, смешанный режим)

я знаю, что jdk11 не содержит jre, но как мне запустить java-программу из cmd в java 11

Ответы [ 3 ]

0 голосов
/ 03 ноября 2018

JDK включает в себя JRE, который можно запустить с помощью исполняемого файла java в папке bin. Вы используете этот исполняемый файл так же, как и любой другой исполняемый файл.

Когда вы набираете java в командной строке, это фактически сокращение. Он ищет ваш PATH, пока не найдет первый соответствующий java исполняемый файл. Если вы хотите указать другой исполняемый файл java, вы можете указать абсолютный путь к исполняемому файлу.

C:\Users\Avril> "C:\Program Files\Java\jdk-11.0.1\bin\java" -jar path\to\file.jar

Вам может быть интересно, если вы установили JAVA_HOME и PATH для указания на JDK-11, почему java -version все еще использует Java 8?

Взгляните на свой PATH, и вы, вероятно, найдете что-то вроде C:\ProgramData\Oracle\Java\javapath в качестве одной из первых записей ( см. Это ). Эта запись была добавлена ​​автоматически при установке Java 8 и указывает на исполняемые файлы Java 8 (java, javaw и javaws). Так как он до вашей записи %JAVA_HOME%\bin, он имеет приоритет. Однако ...\javapath не содержит javac, и поэтому javac -version используется JAVA_HOME (Java 11).

0 голосов
/ 03 ноября 2018

Чтобы выполнить программу из другой папки, отличной от bin, используя java 11, вы должны установить путь JAVA_HOME следующим образом из CMD :

Открыть CMD от имени администратора

Установите JAVA_HOME в папку bin JDK 11

setx -m JAVA_HOME "C:\Program File\Java\..."
0 голосов
/ 03 ноября 2018
Папка

bin содержит все традиционные инструменты JRE. В Java 11 инструменты JDK и JRE объединены, так что в JDK 11 нет JRE.

...