Jak sprawdzić, czy zestaw Java JDK jest zainstalowany na komputerze Mac?


125

Jak sprawdzić, czy zestaw Java SDK jest zainstalowany na komputerze Mac?

Czy jest do tego linia poleceń?


„to oprogramowanie nie działa” Jaki jest komunikat o błędzie?
Andrew Thompson,

Odpowiedzi:


183

javac -version w terminalu wystarczy


Mam "javac 1.6.0_37", czy jest to odpowiednik jdk 6 czy 7?
zły kiwi

7
Jeśli jednak Java nie jest zainstalowana, pojawi się okno dialogowe z informacją, że Java musi zostać zainstalowana, więc nie jest to dobra opcja dla skryptów.
płatny nerd

70

Możesz wykorzystać java_homeplik binarny pomocnika OS Xdo tego, czego szukasz.

Aby wyświetlić listę wszystkich wersji zainstalowanego 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

Aby zażądać ścieżki JAVA_HOME określonej wersji JDK, możesz wykonać:

$ /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

Możesz skorzystać z powyższych poleceń w swoim skrypcie w następujący sposób:

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

Możesz być w stanie zrobić if-else i sprawdzić również wiele różnych wersji Java.

Jeśli wolisz dane wyjściowe XML, java_home ma również opcję -X do wyświetlania w formacie 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.

17

Wpisz terminal:

which javac

Powinien pokazać ci coś podobnego

/usr/bin/javac

12
-1 odpowiedź: Obecność polecenia javy w drodze nie ma potwierdzić, że jest zainstalowany JDK (ale JRE)
Luigi R. Viggiano

Zgadzam się. Mogłem uruchomić „która java” lub „który javac”, ale podczas uruchamiania „java --version” pojawił się komunikat o błędzie, ponieważ pakiet JDK nie jest zainstalowany.
fanchyna

1
-1 To jest całkowicie błędne. Wszystkie komputery Mac są javacdomyślnie wyposażone w podkładkę. Nie ma żadnego związku z tym, czy Java jest zainstalowana, czy nie.
Radon Rosborough

3

Poniższe polecenie wyszło całkiem nieźle:

javac -version

Zweryfikowałem również ręcznie, przechodząc do folderu Java na moim Macu

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

2

/usr/bin/java_home narzędzie zwraca 1, jeśli java nie jest zainstalowana.

Możesz więc sprawdzić, czy Java jest zainstalowana w następujący sposób:

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

1

Po prostu wpisz javac. Jeśli jest zainstalowany, otrzymasz informacje o użytkowaniu, w przeciwnym razie po prostu zapyta, czy chcesz zainstalować Javę.


0

Upewnij się, że poprawnie zdefiniowałeś JDK projektu i zrestartuj IntelliJ (pełny restart).


0
  • Otwórz terminal.
  • uruchom polecenie, aby zobaczyć:

    javac -version

  • Możesz również zweryfikować ręcznie, przechodząc do określonej lokalizacji, a następnie sprawdź. Aby to zrobić, uruchom poniższe polecenie w terminalu Mac

    cd / Library / Java / JavaVirtualMachines /

Następnie ponownie uruchom lspolecenie w terminalu. Teraz możesz zobaczyć wersję i pakiet jdk, jeśli istnieje na twoim komputerze.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.