Mac OS X'e belirli bir JDK nasıl kurulur?


197

Belirli bir JDK (örneğin en son) yüklemek istiyorum. Bunun için JDK indirme ana sayfasına gittim: http://java.sun.com/javase/downloads/index.jsp . Bir Mac sürümü aradım, ancak yalnızca Linux, Windows ve Solaris için indirilebilir sürümleri gördüğüme biraz şaşırdım ...

Mac için mesaj:

"Apple Computer kendi Java sürümlerini sağlar. Mac'iniz için Java'nın en güncel sürümüne sahip olup olmadığınızı kontrol etmek için Yazılım Güncelleme özelliğini (Apple menüsünde bulunur) kullanın."

Tamam ama ... Java'yı Mac ile güncellediğimde JDK değil JRE var ...

Mac için kolayca indirilebilir / yüklenebilir (açmak için bir kavanoz gibi?) Bir JDK sürümünün neden var olduğunu anlamıyorum ...


70
Ünlü soru ... bir cevabı kabul etmelisin. ;)
gary

Fink bunun için bir çözüm sunar.
Daniel

10
Java 7'nin artık Oracle tarafından sağlandığını unutmayın - cevapların ve görevlerin çoğu daha önceki bir duruma işaret ediyor
mmmmmm

Yanıtlar:


44

@ Thilo'nun cevabı altındaki bir yorumda @mobibob, Mac'te .bash_profile dosyanızda JAVA_HOME'u nasıl ayarlayacağınızı sordu. Cevap:

export JAVA_HOME=`/usr/libexec/java_home` 

Bu, JAVA_HOME dosyasına "Java Tercihleri" yardımcı programının "Genel" sekmesinde listelenen ilk JDK'nın konumunu dinamik olarak atar.

Bkz. Apple Teknik Soru ve Cevap 1170: https://developer.apple.com/library/content/qa/qa1170/_index.html

DÜZENLE:

Komut yerine koymak için parantezleri ters çevirmeyi tercih ederseniz, bu da işe yarar:

export JAVA_HOME=$(/usr/libexec/java_home)

20

Mesajın dediği gibi Mac'te Java için Sun'a değil Apple'a gitmelisiniz. Bildiğim kadarıyla Apple JDK 6, varsayılan olarak Mac OS X 10.6'ya (Snow Leopard) yüklenmiştir. Belki geliştirici araçlarını Mac OS X kurulum DVD'nizden kurmanız gerekir (dev araçları OS DVD'sinden isteğe bağlı bir kurulumdur).

Bkz. Http://developer.apple.com/java/

Not - 16 Ekim 2009 tarihli bu yanıt şimdi güncel değildir; Mac OS X için JDK'yı şimdi Oracle'ın web sitesindeki normal JDK indirme sayfasından edinebilirsiniz .



10

Dün bir MacBook Pro aldım ( Mac OS X v10.8 (Mountain Lion)) ve varsayılan olarak yüklü bir JDK yok ...

Javac'ın yanı sıra, SVN gibi paketler yüklü olmadığını da buldum . Her şeyi Apple geliştirici sayfasından alabileceğiniz ortaya çıkıyor (AppleID'nize kaydolmanız gerekecek). SVN, "Komut Satırı Araçları" paketinin bir parçasıdır.

Resim açıklamasını buraya girin

Yeni bir MacBook'ta olan budur:

Resim açıklamasını buraya girin

Resim açıklamasını buraya girin

Umarım bu benim gibi diğer yenilere yardımcı olacaktır;)


5
+1. Dağ Aslanı ile durum biraz değişti. Ayrıca Apple, isteğe bağlı Java yüklemesini sunarken, yalnızca eski Java 6'ya ait olduğunu unutmayın. OS X için geçerli Java sürümleri artık Oracle tarafından dağıtılmaktadır.
Thilo


4

Açıklama, JDK'nın biraz özgün olması ve kütüphane araçlarını içermemesidir . Jar . Benim gelişim için, bu kütüphaneye ihtiyacım var ve Mac'in JDK'sı bunu sağlamıyor:

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

tools.jar mevcut değil. Genellikle burada bulunan sınıflar bunun yerine classes.jar dosyasına dahil edilir. Tools.jar dosyasının varlığına dayanan komut dosyalarının buna göre yeniden yazılması gerekir.

Berbat!


1
Ahhhhhhh !!! Bildiğiniz gibi, tools.jarMac OS X için çalışma tools.jar
zamanına

Yanıtınız için teşekkürler, haklısınız. Benim ihtiyacım belirli bir proje için tools.jar lib almaktı ve benim için bir jdk tanımak için bir yaklaşımdı;)
ajeanson

4

En kolay yol Homebrew'u kullanmaktır . Homebrew'u yükleyin ve ardından:

brew tap caskroom/versions
brew cask install java7

Mevcut tüm sürümleri aşağıdaki komutu kullanarak listeleyebilirsiniz: brew cask search java


3

-Source 1.5 -getget 1.5 (JDK 6 ortamında) ile derleme yalnızca 1.5 ve önceki dil öğelerini onurlandıracaktır. Harika. Ama yine de 6'da dil değişikliği olmadı. Bu yaklaşımla ilgili sorun (1.6 ile Mac'te), 1.5 SONRASI gelen sınıfları kullanmanın, rt.jar dosyasında bulunduğundan derleneceğidir. Böylece bir 1.5 env çalıştırmak ve derleme sırasında önceden uyarı olmadan bir istisna bulunamadı bir sınıf alabilirsiniz. Bunu javax.swing.event.RowSorterEvent / Listener ile zor yoldan öğrendim. Her ikisi de "1.6 beri" girdi ancak -source 1.5 ile yakalanmaz



3

Mac OS X v10.6 (Snow Leopard) itibarıyla, Java 6'yı 32 bit veya 64 bit Intel işlemci donanımlı Mac'lerde 32 bit modunda çalıştırabilirsiniz .

Snow Leopard'a yükseltemiyorsanız Soy Soy , Intel 32 bit için Java 6'nın önceden derlenmiş bir sürümüdür.



1

Bu diğer Stack Overflow sorusunun yardımcı olabileceğini düşünüyorum:

Mac OS X'te JDK 1.5 nasıl edinilir

Temel olarak, JDK'nın daha eski bir sürümüyle (örneğin 1.4 veya 1.5) bir Java uygulaması derlemeniz veya yürütmeniz gerekiyorsa, geri uyumlu olduğu için 1.6'yı kullanarak yapabileceğinizi söyler. Bunu yapmak için parametreyi -source 1.5ve / veya -target 1.5javac seçeneklerine veya IDE'nize eklemeniz gerekir .


1

JDK, Java Geliştirme Kiti'dir (Java yazılımı geliştirmek için kullanılır).

JRE , Java Runtime Environment (herhangi bir .jar dosyasını 'Java yazılımı' çalıştırmak için kullanılır).

JDK, içinde bir JRE içerir.

Windows'da Java'yı güncellediğinizde JRE otomatik olarak güncellenir.

Mac'te JRE ayrılmış değil, JDK'nın içinde, bu nedenle Java'yı güncellediğinizde JDK'nızın içindeki JRE'nizi güncelleyecek; sizin için bir JDK yüklemez. Başka bir yerden almalısın.


1
Sanırım IDK yerine JDK demek istedin. Düzenlemeyi denedim ancak Stack Overflow, düzenlemelerin 6 karakterden uzun olması gerektiğini söyledi. Sadece karışıklığı önlemek için söz.
webworm

1

JDK ve diğer jdk ilgili araçları kolaylıkla yönetmek için bu harika araç sdkman kontrol edin !

Örneğin

$sdk list java
$sdk install java <VERSION>

1

Çoğu cevap güncel olmadığından, 2018 sonu itibariyle şu şekilde çalışır:

  1. OpenJDK'nın GPL sürümünü yüklemek istiyorsunuz. [0]
  2. Homebrew'i kurmak istemiyorsunuz

Bu durumda, istediğiniz sürümü mevcut, serbestçe kullanılabilir OpenJDK sürümlerinden birinden alın, örneğin:

Bunlardan bazıları yükleyicileri içerir, ancak değilse, aşağıdakileri yapabilirsiniz. Burada Mac için sürüm 11.0.1 olduğu varsayılıyor. En sevdiğiniz kabukta şunları çalıştırın:

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] Oracle markalı JDK'nın, temel olarak yalnızca test için kullanılmasına izin veren , yani üretim için değil , önemli lisanslama kısıtlamalarına sahip olduğunu unutmayın . Oracle ile bir destek sözleşmeniz yoksa, özellikle OpenJDK ile olan farklar çok az olduğu için JDK'larını kullanmak benim için riskli görünüyor .

Düzenleme: daha fazla seçenek eklendi


1
AdoptOpenJDK.net'ten indirmeyi işaret etmenizi ve ardından talimatlarınızı izlemenizi ve böylece Oracle'ın sürümlerinin yasal ve destek sorunlarından kaçınmanızı öneririm .
Basil Bourque

0

Kural olarak, Mac'e Java tarafından Yazılım Güncelleme ile sağlanan diğer sürümleri yükleyemezsiniz. Java 6'ya ihtiyacınız varsa, 64 bit Intel bilgisayarınız olmalıdır. En az OS X 10.4'ünüz varsa her zaman Java 5 ve 1.4 ve belki 1.3 yüklü olmalıdır.

Çok fazla dirsek yağı varsa ve beta yazılımı ile çalışmaya istekli iseniz, OS X altında OpenJDK'yi yükleyebilirsiniz, ancak oraya gitmek istediğinizi sanmıyorum.


Biliyorum, bu yüzden bu yorumu ekledim. Belki bağlantı ile gitmek için biraz daha uzun bir yorum yazmış olabilir :-)
Neeme Praks
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.