Java Tercihleri ​​artık bittiğinde Mountain Lion'daki iki Java sürümü arasında nasıl geçiş yapabilirim?


32

Java'nın Mountain Lion ile birlikte kurulu iki sürümü var:

Apple'dan yapılan güncelleme Java Tercihlerini kaldırır . Başka bir soruda biri bu yardımcı programın kaldırılması konusunda merak ediyor.

Sorum farklı:

  • Java Tercihleri gittiğinde şimdi iki sürüm arasında nasıl geçiş yapabilirim ?

Java tercihlerini kolaylıkla belirlemek için Apple'ın yardımcı programını daha önce kullandım. Bu yardımcı program olmadan kolay ve hızlı bir yol var mı?


Java Tercihlerini yeniden yükleyememenizin bir nedeni var mı ?
chharvey, 27:12

@ TestSubject528491 Bunu nasıl yapabilirim?
Maverik

Sanırım bu size yardımcı olacak, henüz makinemde denemedim. Wikihow.com/Install-Oracle-Java-on-Ubuntu-Linux adresindeki 12. ve 13. adımlara bakınız . Java arasında geçiş yapmak için adımları tekrarlayabilirsiniz .. umarım bu size yardımcı olur ..
Dilip Rajkumar

@DilipRajkumar Bu linux içindir ....
Maverik

Maalesef linux komutunun Mac üzerinde çalışacağını varsaydım. Başka bir çözümle şanslıysam, önereceğim ..
Dilip Rajkumar

Yanıtlar:


12

İki yaklaşıma ihtiyacınız olabilir:

  • yalnızca uygulama eklentisinin sürümünü değiştirmek için
  • Uygulama eklentisi için sürümü değiştirmeden JRE'nin diğer bölümleri için sürümü değiştirmek üzere başka bir yaklaşım.

Son kullanım durumum :

  • Eklentiyi kullanmayan uygulamalar için Java 8
  • Uygulama eklentisi için Java 7 Güncelleme 9

Uygulama eklentisini JRE / JDK'nın diğer bölümlerini değil, Java 8'den Java 7 Güncelleme 9'a geçirmek için

  1. web tarayıcılarından ve Java veya Java uygulaması eklentisini kullanan diğer uygulamalardan çıkın
  2. JDK 8'i yükleyin
  3. eklentiyi bir kenara koymak
  4. JRE 7 Güncelleme 9 veya JDK 7 Güncelleme 09'u yükleyin.

Kenara koymak: önerilen hareket

sudo mv /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin /private/var/tmp

Sık sık geçiş yapmayı planlıyorsanız , farklı bir geçici konum tercih edebilirsiniz.

Sonuç

sh-3.2$ java -version
java version "1.8.0-ea"
Java(TM) SE Runtime Environment (build 1.8.0-ea-b58)
Java HotSpot(TM) 64-Bit Server VM (build 25.0-b02, mixed mode)
sh-3.2$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.8.2
BuildVersion:   12C60

Aynı zamanda:

Oracle’ın Safari’de Java sürümünü doğrulamasının ekran görüntüsü

Uygulama eklentisini JRE / JDK’nın diğer bölümlerini değil, Java 7 Güncelleme 9’dan Java 6 Güncelleme 37’ye geçirmek için

Altındaki cevaplar:


JRE'yi değiştirmek, ancak uygulama eklentisini Java 8'den Java 7 Güncelleme 9'a değiştirmek için

JDK 7 Update 09'u ve ardından JDK 8'i yükleyin.

  • işletim sistemi ve uygulamalar en iyi sürümü kullanmak için varsayılan olarak kullanılır.

Java kullanan tüm uygulamalardan çıkın. Tarayıcıdan çıkmanıza gerek yok.

jdk1.8… Dizinini bir kenara koyun.

/Library/Java/JavaVirtualMachines

  • işletim sistemi ve uygulamalar Java 7 Güncelleme 9'u kullanacak.

JRE'yi değiştirmek, ancak uygulama eklentisini değil, Java 7 Güncelleme 9'dan Java 6 Güncelleme 37'ye geçmek için.

Java kullanan tüm uygulamalardan çıkın. Tarayıcıdan çıkmanıza gerek yok.

jdk1.7… Dizinini bir kenara koyun.

/Library/Java/JavaVirtualMachines

  • işletim sistemi ve uygulamalar Java 6 Güncellemesi 37'yi kullanır.

Örnek

macbookpro08-centrim:~ gjp22$ java -version
java version "1.7.0_09"
Java(TM) SE Runtime Environment (build 1.7.0_09-b05)
Java HotSpot(TM) 64-Bit Server VM (build 23.5-b02, mixed mode)
macbookpro08-centrim:~ gjp22$ sudo mv /Library/Java/JavaVirtualMachines/jdk1.7.0_09.jdk /private/var/tmp
Password:
macbookpro08-centrim:~ gjp22$ java -version
java version "1.6.0_37"
Java(TM) SE Runtime Environment (build 1.6.0_37-b06-434-11M3909)
Java HotSpot(TM) 64-Bit Server VM (build 20.12-b01-434, mixed mode)

genellikle

OS X kullanıcıları için Oracle tarafından sağlananların bir kısmı başlangıçta yanıltıcıdır:

… ve bunun gibi.

Basitlik

Yukarıdakilerin hiçbiri daha önce Apple tarafından uygulaması yüklü Java Tercihler ile anahtarlama olarak basit olarak iken, nispeten basit yaklaşım kenara koyma (özel kaldırma gerek) ... sürükle ve bırak kurulum için dilek anımsatır önceden ifade içinde OpenJDK-osx-build alanı.

Birisi bir uygulama oluşturmak isteyebilir, ancak sembolik bağlantılar kullanmayı tavsiye etmemeliyim - işe yarar, ancak kurulum için gelecekteki sürükle ve bırak yaklaşımlarıyla tutarsız olabilir.

Yan notları

Yazma zamanda En son anda hangi desteklenen bültenleri Oracle güncellemeler yapar kamuya mevcut olan 37 Java 6 Güncelleme (OS X dışındaki platformlar için) ve Java 7 Güncelleme 9 (OS X dahil platformları için).

Daha büyük sürümler kullanıma sunulacağından, lütfen bu cevabı uygun şekilde yeniden yorumlayın.

Bu cevaptaki Java sürüm terminolojisi, Java Yardım Merkezi terminolojisine uygundur.


Gerçekten Java 8'e mi bakıyorsunuz yoksa bir hata mı? :-)
Maverik

1
Gerçekten ;-)… lütfen bağlantılı sorulara, sağ sütuna bakınız.
Graham Perrin

4
JDK8 kullanıyorsanız ve sık sık geçiş yapmak istiyorsanız işte bir ipucu. Basitçe kapatmak sudo chmod 0000 /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/ve tekrar açmak için 0000 JDK8 dizinini chmod yapın sudo chmod 0755 /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/.
Brett Ryan,

1
@BrettRyan tarafından son öneri benim için mükemmel çalıştı. Bence gitmenin en kolay yolu.
Artem

1
Çok teşekkürler @ BrettRyan bu en basit olanıydı !!! Cevabın yazarı için alternatif eklemesini öneririm. Komutlarla ana klasörümde bir .sh oluşturdum ve birinden diğerine geçen bir anahtara bağlı bir Otomator oluşturdum. Şaşırtıcı!
Panthro

29

Bir terminal açın, bu komutu kullanın:

/usr/libexec/java_home -v 1.6 

1.6'yı kullanmak istediğiniz herhangi bir java sürümüyle değiştirebilirsiniz; komut, java sürümünün bulunduğu yeri gösterecektir. (yani: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home)

o zaman JAVA_HOME’yu normalde yaptığınız gibi önceki komutun çıktısı ile ayarlayabilirsiniz. yani:

export JAVA_HOME=/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home

Yani basitleştirmek için; Böyle bir şey çalışması gerekir:

export JAVA_HOME=$(/usr/libexec/java_home -v 1.6)

sürümü ile kontrol etmeyi unutmayın:

java -version

Umarım yardımcı olur.


4
Bu, çevrimiçi ortamda bulabildiğim bu sorunun en kullanışlı tek cevabı. TEŞEKKÜR EDERİM!
SearchTools-Avi 17.03.2013

1
Tamam, BU kabul edilen cevap olmalı. Yüklemiş olduğum bir uygulama sunucusu için zorunlu bir JAR güncellemem var ve SADECE Java 6'da çalışacak. Bunu kullanarak, Java 6'ya geçebildim, güncelleyiciyi çalıştırabilir ve sonra geri dönebildim. Şimdi uygulama sunucusunu Java 7'de çalışacak şekilde güncelleyebilirim.
Adrian J. Moreno

4

Manuel olarak yapmanız gerekecek gibi görünüyor. Oracle'ın belgeleri , bir seferde yalnızca bir JRE'nin kurulabileceğini belirtir .

Bu Apple destek sayfası , Apple SE 6 JRE ve Oracle SE 7 JRE arasında nasıl geçiş yapılacağını açıklar . Kısaca, Oracle’ın JRE’sinden Apple’a geri geçmek için Terminal uygulamasını başlatın ve aşağıdakini yazın:

sudo mkdir -p /Library/Internet\ Plug-Ins/disabled

sudo mv /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin /Library/Internet\ Plug-Ins/disabled

sudo ln -sf /System/Library/Java/Support/Deploy.bundle/Contents/Resources/JavaPlugin2_NPAPI.plugin /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin

Destek sayfasında Web Start'ın JRE 6'ya nasıl geri dönüleceği ve her şeyin Oracle JRE 7'ye nasıl geri döndürüleceği (JRE'yi yeniden yükleyin) hakkında daha fazla (ve daha iyi) talimat vardır.

Java Tercihleri ​​yardımcı programını kullanmak kadar basit değil, hiç yoktan iyidir.


1
Oracle'ın JRE terimini son zamanlarda kullanması, OS X kullanıcıları için yanıltıcıdır. JRE, eklentiden çok daha fazlasıdır.
Graham Perrin

2

dayalı user2343996 cevabı

alias java8="export JAVA_HOME=$(/usr/libexec/java_home -v 1.8) && java -version"
alias java6="export JAVA_HOME=$(/usr/libexec/java_home -v 1.6) && java -version"

-4

Neden 2 tane Java sürümünün yüklü olması gerekiyor?

Apple'da Java varsayılan güncelleme olarak kurulu değil (Lion'dan itibaren inanıyorum). Mac’te Java’yı denetlemenin / kurmanın en iyi yolu aşağıdaki gibidir:

  1. Terminali açın. "Java" yazın (kurs tırnak işaretleri olmadan)
  2. Java yoksa, aşağıdakileri alırsınız: "Java Runtime mevcut değil, yükleme isteğinde bulunma ..."
  3. Java normal olarak yüklemeye başlar (kurulumu başlatan yanlış yürütülebilir dosyadır)
  4. Sürümü kontrol etmek için java'nız varsa, "java-version" terminal tipinde

Java'nın farklı bir sürümünü yüklemek istiyorsanız: Yalnızca oracle sitesine gidin ve en yeni / eski jdk'yi indirin.


Zaten soruda yazdığım iki Java sürümüne sahibim. Varsayılanı nasıl değiştireceğimi soruyorum.
Maverik

Otomatik olarak kurulu en yeni sürüme / en son sürüme geçtiğini düşünüyorum. Benim durumumda en son jdk 7'yi yükledim. Demek varsayılan olarak çalışan budur.
SashaZd

3
Sürümler arasında geçiş yapabilmek istiyorum.
Maverik

Apple JDK 6 ile Oracle JDK 7 arasında, hem derleme zamanında hem de çalışma zamanında uyumsuzluğa neden olabilecek farklılıklar vardır.
JohnnyO

1
Genel olarak, yanıt basitçe hayır olduğunda rakip veya zorlayıcı bir alternatif sunamadıkça, birinin öncülünü değiştirmeye çalışmayız. Ayrıca oy vermekten vazgeçiriyoruz, bu yüzden cevabınızı düzelttim.
bmike
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.