Як перевірити, чи встановлено Java JDK на Mac?


Відповіді:


184

javac -version в терміналі зроблять


Я отримав "javac 1.6.0_37", це еквівалент jdk 6 або 7?
сердитий ківі

7
Однак якщо Java не встановлена, з'явиться діалогове вікно, яке говорить вам про те, що потрібно встановити Java, тому це не гарний варіант для сценаріїв.
платний ботанік

71

Ви можете використовувати java_homeбінарний помічник на OS Xте, що шукаєте.

Щоб перелічити всі версії встановленого JDK:

$ /usr/libexec/java_home -V
Matching Java Virtual Machines (2):
    1.8.0_51, x86_64:   "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home
    1.7.0_79, x86_64:   "Java SE 7" /Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home

Щоб подати запит на шлях JAVA_HOME певної версії JDK, ви можете:

$ /usr/libexec/java_home -v 1.7
/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home

$ /usr/libexec/java_home -v 1.8
/Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home

Ви можете скористатися перерахованими вище командами у вашому сценарії так:

REQUESTED_JAVA_VERSION="1.7"
if POSSIBLE_JAVA_HOME="$(/usr/libexec/java_home -v $REQUESTED_JAVA_VERSION 2>/dev/null)"; then
    # Do this if you want to export JAVA_HOME
    export JAVA_HOME="$POSSIBLE_JAVA_HOME"
    echo "Java SDK is installed"
else
    echo "Did not find any installed JDK for version $REQUESTED_JAVA_VERSION"
fi

Можливо, ви зможете зробити if-else і перевірити також чимало різних версій Java.

Якщо ви віддаєте перевагу вихід XML, java_home також має опцію -X для виводу в XML.

$ /usr/libexec/java_home --help
Usage: java_home [options...]
    Returns the path to a Java home directory from the current user's settings.

Options:
    [-v/--version   <version>]       Filter Java versions in the "JVMVersion" form 1.X(+ or *).
    [-a/--arch      <architecture>]  Filter JVMs matching architecture (i386, x86_64, etc).
    [-d/--datamodel <datamodel>]     Filter JVMs capable of -d32 or -d64
    [-t/--task      <task>]          Use the JVM list for a specific task (Applets, WebStart, BundledApp, JNI, or CommandLine)
    [-F/--failfast]                  Fail when filters return no JVMs, do not continue with default.
    [   --exec      <command> ...]   Execute the $JAVA_HOME/bin/<command> with the remaining arguments.
    [-R/--request]                   Request installation of a Java Runtime if not installed.
    [-X/--xml]                       Print full JVM list and additional data as XML plist.
    [-V/--verbose]                   Print full JVM list with architectures.
    [-h/--help]                      This usage information.

18

Введіть термінал:

which javac

Це повинно показати вам щось подібне

/usr/bin/javac

12
-1 для відповіді: наявність команди Java на шляху не свідчить про те, що JDK встановлений (але JRE)
Луїджі Р. Віґяно

Я згоден. Я міг запустити "який java" або "який javac", але я отримав повідомлення про помилку під час запуску "java --version", оскільки JDK не встановлений.
фанчина

1
-1 Це абсолютно неправильно. Усі Маки javacза замовчуванням поставляються з обшивкою. Він не має ніякого відношення до того, встановлена ​​чи ні Java.
Радон Росборо

3

Нижче команда вийшла досить непогано:

javac -version

Я також перевіряв вручну, переходячи до папки Java на моєму Mac

/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk

2

/usr/bin/java_home інструмент повертає 1, якщо Java не встановлена.

Таким чином, ви можете перевірити, чи встановлено java наступним чином:

/usr/libexec/java_home &> /dev/null && echo "installed" || echo  "not installed"

1

Просто введіть javac. Якщо він встановлений, ви отримуєте інформацію про використання, інакше він просто запитає, чи хочете ви встановити Java.


0

Переконайтеся, що ви правильно визначили JDK проекту та перезапустіть IntelliJ (повний перезапуск).


0
  • Відкритий термінал.
  • запустіть команду, щоб побачити:

    javac -версія

  • Також ви можете перевірити вручну, перейшовши до конкретного місця та потім перевірте. Для цього запустіть команду нижче в mac-терміналі

    CD / Бібліотека / Java / JavaVirtualMachines /

Потім знову запустіть lsкоманду в терміналі. Тепер ви можете побачити версію jdk і пакет, якщо він є на вашому комп'ютері.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.