Какую Java вы используете?Установка JDK и JRE (10.0.1) на Server 2016;настройка JAVA_HOME и Path - PullRequest
0 голосов
/ 30 мая 2018

Я готовлюсь к установке Tomcat.Я нахожусь в среде DEV, и мне нужно установить JDK, который также включает JRE.У меня был успех, но я думаю, что у меня есть некоторые странные PATH проблемы. Я ссылался - не явно - на инструкции здесь.

  1. Путь установки JDK - C: \ java
  2. Путь установки JRE - C: \ java \ jre
  3. Переменная JAVA_HOME - C: \ java
  4. PATH var (начало списка) - C: \ java \ bin
  5. PATH также включает в себя - C: \ ProgramФайлы (x86) \ Common Files \ Oracle \ Java \ javapath

Когда я тестирую из командной строки, чтобы проверить, все ли в порядке с java -version, я получаю эту ошибку:

<JAVA_HOME>/lib/ext exists, extensions mechanism no longer supported; Use - 
classpath instead.
.Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

Однако, если я вручную перехожу к C: \ java \ jre \ bin и запускаю java -version, он сообщает мне версию просто отлично, без ошибок.

Это когда я запускаюjava -version из C: \ java \ bin \, где у меня возникла проблема.

В чем разница между java.exe в JRE и JDK?Почему JDK java.exe так несчастен?

1 Ответ

0 голосов
/ 03 июня 2018

Я хочу ответить на свой вопрос для потомков, надеясь, что он может помочь кому-то еще, например мне, новичку в понимании требований Tomcat к Java.

Вот мои наблюдения:

  • В конце концов, я пытался выполнить новую установку в старую «грязную» папку Java.Я начал с новой папки, и это в значительной степени устранило все проблемы.Я не получил сообщение об ошибке в исходном вопросе при запуске java -version.
  • . В этом случае указание JRE_PATH и JAVA_PATH для Tomcat может быть совершенно ненужным.Это переменные среды для Windows cmd, на которые могут ссылаться другие приложения, например Tomcat, во время установки.
  • JRE_PATH и JAVA_PATH являются переменными env и не имеют ничего общего с PATH
  • Установка JDK / JRE добавляет C:\Program Files (x86)\Common Files\Oracle\Java\javapath к PATH.Каким-то образом 3 исполняемых файла в этой папке просто знают , где находится настоящая структура папок Java.Существуют соответствующие ключи реестра, которые определяют местоположение структуры папок.
  • Даже без указания JRE_PATH, Tomcat смог правильно определить местоположение JRE
  • Для целей Tomcat я неНе думаю, что это имеет значение, если вы используете Java.exe из JDK или JRE, потому что они кажутся одинаковыми

Ресурсы:

https://docs.oracle.com/javase/9/install/installation-jdk-and-jre-microsoft-windows-platforms.htm#JSJIG-GUID-29333CFD-E7A6-498B-9317-97700C81D928

Какой JRE использует C: \ ProgramData \ Oracle \ Java \ javapath \ java.exe?

https://www3.ntu.edu.sg/home/ehchua/programming/howto/JDK_Howto.html

JDK исполняемый Java-файл противИсполняемый файл JRE

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...