Як перевірити, чи встановлено 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.