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
MatchingJavaVirtualMachines(2):1.8.0_51, x86_64:"Java SE 8"/Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home1.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ć:
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
#Dothisif 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>]FilterJava versions in the "JVMVersion" form 1.X(+ or *).[-a/--arch <architecture>]FilterJVMs matching architecture (i386, x86_64, etc).[-d/--datamodel <datamodel>]FilterJVMs 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 JavaRuntimeif 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.
-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
Po prostu wpisz javac. Jeśli jest zainstalowany, otrzymasz informacje o użytkowaniu, w przeciwnym razie po prostu zapyta, czy chcesz zainstalować Javę.
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.
Odpowiedzi:
javac -version
w terminalu wystarczyźródło
Możesz wykorzystać
java_home
plik binarny pomocnikaOS X
do tego, czego szukasz.Aby wyświetlić listę wszystkich wersji zainstalowanego JDK:
Aby zażądać ścieżki JAVA_HOME określonej wersji JDK, możesz wykonać:
Możesz skorzystać z powyższych poleceń w swoim skrypcie w następujący sposób:
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.
źródło
Wpisz terminal:
Powinien pokazać ci coś podobnego
źródło
javac
domyślnie wyposażone w podkładkę. Nie ma żadnego związku z tym, czy Java jest zainstalowana, czy nie.Poniższe polecenie wyszło całkiem nieźle:
Zweryfikowałem również ręcznie, przechodząc do folderu Java na moim Macu
źródło
/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:
źródło
Po prostu wpisz
javac
. Jeśli jest zainstalowany, otrzymasz informacje o użytkowaniu, w przeciwnym razie po prostu zapyta, czy chcesz zainstalować Javę.źródło
Upewnij się, że poprawnie zdefiniowałeś JDK projektu i zrestartuj IntelliJ (pełny restart).
źródło
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
ls
polecenie w terminalu. Teraz możesz zobaczyć wersję i pakiet jdk, jeśli istnieje na twoim komputerze.źródło