güncelleme-java-alternatifler vs güncelleme-alternatifleri --config java


96

Ubuntu 12.04 LTS'de Sun'ın JDK7, Eclipse ve Arduino IDE'yi kurdum. Arduino’nun OpenJDK 6’yı kullanmasını ve Eclipse’in Sun’ın JDK 7’sini kullanmasını istiyorum.

Anladığım kadarıyla, her uygulamayı çalıştırmadan önce hangi Java'nın kullanılacağını elle seçmem gerekiyor. Bu beni update-java-alternatives -lkomuta götürdü . Bunu çalıştırdığımda sadece aşağıdakileri görüyorum:

java-1.6.0-openjdk-amd64 1061 /usr/lib/jvm/java-1.6.0-openjdk-amd64

ama kaçtığımda update-alternatives --config javaaşağıdakileri görüyorum:

*0  /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   auto mode
1  /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   manual mode
2  /usr/lib/jvm/jdk1.7.0/bin/java                   manual mode
3  /usr/lib/jvm/jre1.7.0/bin/java                   manual mode

Neden update-java-alternativesaynı 3 seçeneği göstermediğini anlamıyorum . Ayrıca OpenJDK6 ve JDK7 arasında nasıl geçiş yapacağımı da anlamıyorum. Arduino geliştirme için OpenJDK6'yı ve Eclipse / Android geliştirme için Sun JDK7'yi nasıl kullanabilirim?

Yanıtlar:


126

sudo update-alternatives --config java

"Java" programı için varsayılanı yapılandırır. Bu Java VM'si.

sudo update-alternatives --config javac

Varsayılan Java derleyicisini yapılandırır.

Ayrıca, ilk komutun birçok "JRE" (Java Runtime Environment) klasörünü listelediğinden ve Programın yalnızca "java" olarak adlandırıldığını görebilirsiniz.

Ben komutu veren tarafından kullanılıyor sürümü kontrol ederse java -version veya javac -versionher komut kullanılıyor programı değişir, ben görebiliyorum.

Ancak, update-java-alternativesJDK Sürümüyle kullanmak benim için her iki programı da değiştiriyor . İlk komutları kullanarak, farklı JDK'lardan bir Java VM ve Java Derleyici kullanabilirsiniz.

update-java-alternatives, / usr / lib / jvm dizininde .jinfo uzantılı bir dosyanın varlığını gerektirir. Opendjk paketi bir .jinfo dosyası ile birlikte gelir, Oracle'ın jdk'si (eski adı Sun) değildir. Alternatif olarak, update-java-alternatifi olmayan alternatifleri konfigüre edersiniz :

Örneğin, java’yı /usr/lib/jvm/jdk-12.0.1 ( Oracle’ın Debian paketinin varsayılan dizini ) öncelikli 2082’den jvm-directory /usr/lib/jvm/jdk-12.0.1 dizininden eklemek için aşağıdaki komutu kullanın:

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk-12.0.1/bin/java 2082

Farklı geliştirme ortamları için geçiş gelince:

Farklı Java sürümleri ile IDE kendisi başlayan veya farklı sürümlerini kullanarak bahsediyoruz içinde derleme için IDE ve uygulamanızı çalıştıran?

1 için: eclipse.ini dosyasında hangi JVM'nin kullanılacağını burada açıklandığı gibi belirleyebilirsiniz . Bunu Arduino IDE için nasıl yapacağımı bilmiyorum.

2 için: Eclipse'de Pencere -> Tercihler -> Java -> Kurulu JRE'lerde kullanılacak JRE / JDK'yı seçebilirsiniz. Ve eğer Java -> Derleyici altında isterseniz daha eski bir Java uyumluluğu seçebilirsiniz.

EDIT: Bu DigitalOcean sayfası aynı zamanda Ubuntu'da Java ile ilgili her şeyin güzel bir açıklamasını da içeriyor .


15

update-java-alternativesjre/jdkkurulumlar için alternatifleri güncellemek için bir programdır .

update-alternatives Linux için sembolik bir bağlantı yönetim sistemidir (burada küçük bir haber olduğuna eminim).

Sen ve gerçekten her iki kullanmalısınız edebilir update-java-alternativesve update-alternativesbirlikte.

Öncelikle, tüm alternatiflerin doğru yapılandırıldığından emin olun. java ve javac sadece birkaçıdır. Orada javadoc, rmic, serialverve yukarıda değişkenleri yerine diğerleri: native2asciive /opt/jdk1.8.0_40/bin/native2asciialternatif yüklü ve / veya seçilirse bildirmelidir.

Tüm alternatifler konfigüre edildikten sonra /usr/lib/jvm, manuel instalasyonunuza linkler oluşturabilirsiniz .

Yapılandırmak update-java-alternativesiçin dizininizle aynı adı taşıyan ancak a ile ön eklenmiş olan gizli bir dosya kullanmanız gerekir. (nokta).

Bu yardımcı olur umarım.

Kaynakça

man -S 8 update-java-alternatives

http://tech.lanesnotes.com/2008/03/using-alternatives-in-linux-to-use.html

https://stackoverflow.com/questions/6477415/how-to-set-oracles-java-as-the-default-java-in-ubuntu

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.