Чи повинен JAVA_HOME вказувати на JDK чи JRE?


102

Я вказав JAVA_HOMEна C:\Program Files (x86)\Java\jre7. Це чудово працює. Після цього я розпакував мурашник і встановив змінні середовища, пов'язані з Ant, після отримання тексту я отримав такі повідомлення про помилки"ant -version"

зображення

Я шукав цей форум. Схоже, одне рішення - вказати Java на JDK замість JRE. Я не зовсім впевнений, чи має це бути рішенням. Іншими словами, взагалі, на який слід вказувати JAVA_HOME? JDK чи JRE?

Відповіді:


121

Якщо ви робите будь-яку розробку або будуєте з Maven або Ant, вам потрібно вказати на JDK (Java Development Kit), де знаходяться такі утиліти, як javac(Java Compiler). В іншому випадку ви можете вказати на JRE (Java Runtime Environment).

JDK містить все, що має JRE та багато іншого. Якщо ви просто виконуєте програми Java, ви можете вказати на JRE або JDK.


7
Так JAVA_HOMEвикористовується для виконання двох речей: 1: для інструментів розробки, пошуку javac.exe. 2: для інструментів нерозвитку, знаходження java.exe. Це, здається, порушує "один інструмент для однієї речі" . Не JDK_HOMEслід використовувати замість цього?
Pacerier

4
Діаграма на цьому сайті показує взаємозв'язок між JDK та JRE. docs.oracle.com/javase/8/docs
andrybak

1
Чи можливо програматично перевірити, чи встановлено шлях Java як JRE або JDK?
Дінеш Кумар П

9

Просто (змініть свій jdk1.xxx_xx)

JAVA_HOME = C: \ Програмні файли \ Java \ jdk1.8.0_05


6

Мій JAVA_HOME вказує на JDK. Якщо вона все ще не працює, перевірте, чи завантажили ви мураш для Java 7, а не для Java 6.


5

Як правило, це не має значення, вказуєте ви це на JRE або JDK. Це залежить від програми, яка ним користується. Документація мурашника говорить, що вам слід вказати на JDK, щоб отримати всі функції мурашки.


2

як розробник, ви повинні вказати свій JAVA_HOME на jdk, щоб отримати доступ до копіювача javac тощо. Це добре, якщо ви можете протестувати свою програму для запуску на JRE. Якщо ви використовуєте сервер додатків, вам часто також потрібен JDK замість JRE, але це залежить від конкретного сервера.


2

Ви можете використовувати або JDK, або JRE, але:

JAVA_HOME використовується пусковим пристроєм для пошуку JDK / JRE для використання. (JDK рекомендується, оскільки деякі завдання вимагають інструментів java.)
. ANT_HOME налаштування


0

Давайте будемо просто. Перейдіть до налаштувань та пошукайте "Змінні середовища". Як тільки з'явиться вікно змінних середовища, просто створіть нову змінну SYSTEM, натиснувши кнопку НОВИЙ, а потім BROWSE DIRECTORY, поки не знайдете шлях установки JDK. JDK слід встановити в програмні файли, і ви побачите папку JAVA, а всередині папки - JDK та JRE ... Якщо ви пишете код, ви повинні вибрати JDK !!! Не слухайте того, хто говорить, що JRE буде достатньо ... НІ! Я не буду! Власний каталог повинен виглядати так : C: \ Program Files \ Java \ jdk1.8.0_144 це так просто!


2
@Stephan Існуючі відповіді вже дають інформацію, яку я взяв час, щоб надати. Це ваше обґрунтування відмови? У цьому проблема багатьох цих потоків. Для одного, лише тому, що на нього відповіли основний принцип, не означає, що відповідь була добре сформована або навіть корисна. Моя відповідь зовсім не така, як попередні відповіді. Відповідь, яку я надавав, прийшов з точними вказівками
nexogen.io
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.