Jak zainstalować konkretny JDK na Mac OS X?

197

Chcę zainstalować konkretny pakiet JDK (na przykład najnowszy). W tym celu poszedłem na stronę główną pobierania JDK: http://java.sun.com/javase/downloads/index.jsp . Szukałem wersji na komputery Mac, ale jestem nieco zaskoczony, widząc tylko wersje do pobrania dla systemów Linux, Windows i Solaris ...

Oto wiadomość dla komputerów Mac:

„Apple Computer dostarcza własną wersję Java. Skorzystaj z funkcji aktualizacji oprogramowania (dostępnej w menu Apple), aby sprawdzić, czy masz najnowszą wersję Java dla komputera Mac”.

OK ALE ... kiedy aktualizuję Javę na Macu, mam JRE, a nie JDK ...

Nie rozumiem, dlaczego nie istnieje wersja JDK, którą można łatwo pobrać / zainstalować (jak słoik do rozpakowania?) Na komputery Mac ...

Ajeanson
źródło
70
Znane pytanie ... powinieneś zaakceptować odpowiedź. ;)
Gary
Fink zapewnia na to rozwiązanie.
Daniel
10
Zauważ, że Java 7 jest teraz dostarczana przez Oracle - większość odpowiedzi i pytania odnoszą się do wcześniejszego stanu
mmmmmm
Zobacz także: Uzyskaj Java 11 dla macOS?
Basil Bourque,

Odpowiedzi:

44

W komentarzu pod odpowiedzią @ Thilo @mobibob zapytał, jak ustawić JAVA_HOME w pliku .bash_profile na komputerze Mac. Odpowiedź:

export JAVA_HOME=`/usr/libexec/java_home` 

Spowoduje to dynamiczne przypisanie do JAVA_HOME lokalizacji pierwszego JDK wymienionego na karcie „Ogólne” narzędzia „Preferencje Java”.

Zobacz Apple Technical Q&A 1170: https://developer.apple.com/library/content/qa/qa1170/_index.html

EDYTOWAĆ:

Jeśli wolisz wstawiać nawiasy okrągłe w celu zastąpienia poleceń, działa to również:

export JAVA_HOME=$(/usr/libexec/java_home)
Mark Tye
źródło
20

Jak głosi komunikat, musisz przejść do Apple, a nie do Sun, na Javę na Macu. O ile mi wiadomo, Apple JDK 6 jest domyślnie instalowany w systemie Mac OS X 10.6 (Snow Leopard). Być może trzeba zainstalować narzędzia programistyczne z instalacyjnej płyty DVD z systemem Mac OS X (narzędzia programistyczne są opcjonalną instalacją z płyty DVD z systemem operacyjnym).

Zobacz: http://developer.apple.com/java/

UWAGA Ta odpowiedź z 16 października 2009 r. Jest obecnie nieaktualna; możesz pobrać JDK dla Mac OS X ze zwykłej strony pobierania JDK na stronie Oracle.

Jesper
źródło
10

Dla osób używających dowolnego LION OS X 10.7.X

Przesłali Java SE 6 wersja 1.6.0_26 dostępna tutaj

http://support.apple.com/kb/dl1421

Roy Calderon
źródło
3
Aaand, zastąpili go _29, który ma błąd MS SQL. Wspaniały. :(
Carighan
10

Kupiłem wczoraj MacBooka Pro ( Mac OS X 10.8 (Mountain Lion)) i domyślnie nie ma zainstalowanego JDK ...

Oprócz javaca odkryłem, że nie ma zainstalowanych pakietów takich jak SVN . Okazuje się, że wszystko możesz pobrać ze strony programisty Apple (musisz zarejestrować się przy pomocy AppleID). SVN jest częścią pakietu „Narzędzia wiersza poleceń”.

Wpisz opis zdjęcia tutaj

Oto, co dzieje się na świeżym MacBooku:

Wpisz opis zdjęcia tutaj

Wpisz opis zdjęcia tutaj

Mam nadzieję, że pomoże to innym początkującym, takim jak ja;)

matowe oparzenia
źródło
5
+1. Sytuacja trochę się zmieniła w przypadku Mountain Lion. Zwróć też uwagę, że chociaż Apple oferuje opcjonalną instalację Java, jest to tylko starsza wersja Java 6. Obecne wersje Java dla OS X są teraz dystrybuowane przez samą Oracle.
Thilo,
4

Wyjaśnienie jest takie, że JDK jest nieco specyficzny i nie zawiera biblioteki tools.jar . Potrzebuję tej biblioteki, a JDK dla Maca jej nie zapewnia:

(Por. Http://developer.apple.com/mac/library/documentation/Java/Conceptual/Java14Development/02-JavaDevTools/JavaDevTools.html )

tools.jar nie istnieje. Klasy zwykle tutaj zlokalizowane są zamiast tego zawarte w klasach.jar. Skrypty oparte na istnieniu narzędzia.jar muszą zostać odpowiednio przepisane.

To jest do bani!

Ajeanson
źródło
1
Ahhhhhhh !!! Jak odkryłeś, tools.jarjest już uwzględniony w środowisku wykonawczym dla Mac OS X. Dlatego szukanie tools.jarnie jest właściwym podejściem na Macu, aby wiedzieć, czy jest to JDK czy JRE :)
Pascal Thivent
Dziękuję za odpowiedź, masz rację. Musiałem zdobyć bibliotekę tools.jar dla konkretnego projektu, a dla mnie było to podejście do rozpoznania jdk;)
ajeanson 16.10.2009
4

Najprostszym sposobem jest użycie Homebrew . Zainstaluj Homebrew, a następnie:

brew tap caskroom/versions
brew cask install java7

Możesz wyświetlić listę wszystkich dostępnych wersji za pomocą następującego polecenia: brew cask search java

solomkinmv
źródło
3

Kompilacja z -source 1.5 -target 1.5 (w środowisku JDK 6) honoruje tylko te elementy języka, które były w wersji 1.5 i wcześniejszych. Wspaniały. Ale i tak nie było żadnych zmian językowych w 6. Problem z tym podejściem (na Macu z wersją 1.6) polega na tym, że korzystanie z klas, które pojawiły się PO 1.5, nadal będzie się kompilować, ponieważ istnieją one w pliku rt.jar. Można więc uruchomić w środowisku env 1.5 i otrzymać kompilację, której nie znaleziono, bez uprzedniego ostrzeżenia. Odkryłem to na własnej skórze za pomocą javax.swing.event.RowSorterEvent / Listener. Oba wpisały „Od wersji 1.6”, ale nie zostały przechwycone przez -source 1.5

Evan
źródło
3

Jeśli zainstalowałeś napar, pomocne będzie poniższe cmd:

brew cask zainstaluj java

Ciężki
źródło
Napar? Masz na myśli Homebrew ?
Peter Mortensen
3

Począwszy od systemu Mac OS X 10.6 (Snow Leopard), można uruchomić Javę 6 w trybie 32-bitowym na komputerach Mac wyposażonych w procesor Intel 32-bitowy lub 64-bitowy .

Jeśli nie możesz zaktualizować systemu do wersji Snow Leopard, Soy Latte to wstępnie skompilowana wersja Java 6 dla 32-bitowego procesora Intel.

Brian M. Carr
źródło
1

Myślę, że to inne pytanie dotyczące przepełnienia stosu może pomóc:

Jak zdobyć JDK 1.5 na Mac OS X

Mówi w zasadzie, że jeśli chcesz skompilować lub uruchomić aplikację Java ze starszą wersją JDK (na przykład 1.4 lub 1.5), możesz to zrobić za pomocą 1.6, ponieważ jest ona kompatybilna wstecz. Aby to zrobić, musisz dodać parametr -source 1.5i / lub -target 1.5w opcjach javac lub w swoim IDE.

Fgblanch
źródło
1

JDK to Java Development Kit (używany do tworzenia oprogramowania Java).

JRE to środowisko wykonawcze Java (używane do uruchamiania dowolnego pliku .jar „Oprogramowanie Java”).

JDK zawiera w sobie środowisko JRE.

W systemie Windows podczas aktualizacji Java środowisko JRE jest automatycznie aktualizowane.

Na komputerach Mac nie masz oddzielnego środowiska JRE, ale masz je wewnątrz JDK, więc po aktualizacji Java zaktualizuje środowisko JRE znajdujące się w JDK; nie instaluje dla ciebie JDK. Musisz go zdobyć skądinąd.

Peter Mortensen
źródło
1
Myślę, że miałeś na myśli JDK zamiast IDK. Próbowałem edytować, ale Stack Overflow powiedział, że zmiany muszą być dłuższe niż 6 znaków. Wystarczy wspomnieć o tym, aby uniknąć zamieszania.
webworm
1

Sprawdź to niesamowite narzędzie sdkman do zarządzania jdk i innymi narzędziami związanymi z jdk!

na przykład

$sdk list java
$sdk install java <VERSION>
Rishikesh Darandale
źródło
1

Ponieważ większość odpowiedzi jest nieaktualna, oto, co działa na koniec 2018 r. Przy założeniu, że

  1. Chcesz zainstalować OpenJDK w wersji GPL. [0]
  2. Nie chcesz instalować Homebrew

W takim przypadku pobierz żądaną wersję z jednej z wielu dostępnych, darmowych wersji OpenJDK, np .:

Niektóre z nich obejmują instalatory, ale jeśli nie, możesz wykonać następujące czynności. Zakładając tutaj wersję 11.0.1 dla komputerów Mac. W swojej ulubionej powłoce uruchom:

tar -xzf openjdk-11.0.1_osx-x64_bin.tar.gz
sudo mv jdk-11.0.1.jdk /Library/Java/JavaVirtualMachines
# Fix owner and group
sudo chown -R root:wheel /Library/Java/JavaVirtualMachines/jdk-11.0.1.jdk
# (Optional) Check if the new JDK can be found
/usr/libexec/java_home
=> /Library/Java/JavaVirtualMachines/jdk-11.0.1.jdk/Contents/Home

[0] Należy pamiętać, że JDK marki Oracle ma znaczące ograniczenia licencyjne, które pozwalają na jego użycie w zasadzie tylko do testowania, tj. Nie do produkcji. Jeśli nie masz umowy o wsparcie z Oracle, użycie JDK wydaje mi się ryzykowne, zwłaszcza że różnice w OpenJDK są minimalne .

Edycja: dodano więcej opcji

LCC
źródło
1
Sugeruję, abyś wskazał pobieranie z AdoptOpenJDK.net , a następnie postępował zgodnie z instrukcjami, unikając w ten sposób problemów prawnych i związanych z obsługą wydawanych przez Oracle.
Basil Bourque,
0

Z reguły nie można instalować innych wersji Javy na komputerze Mac niż te dostarczone przez Apple za pośrednictwem Aktualizacji oprogramowania. Jeśli potrzebujesz Java 6, musisz mieć 64-bitowy komputer Intel. Zawsze powinieneś mieć zainstalowaną Javę 5 i 1.4, a być może 1.3, jeśli masz przynajmniej OS X 10.4.

Jeśli masz BARDZO dużo smaru łokciowego i chcesz pracować z oprogramowaniem w wersji beta, możesz zainstalować OpenJDK pod OS X, ale nie sądzę, że chcesz tam iść.

Thorbjørn Ravn Andersen
źródło
Wiem, dlatego dodałem ten komentarz. Może powinienem napisać nieco dłuższy komentarz, aby przejść z linkiem :-)
Neeme Praks