Soru Debian / Ubuntu'da JAVA_HOME nasıl belirlenir?


Ubuntu'da aynı anda birden fazla JVM'ye sahip olmak mümkündür. Varsayılan olanı ile seçilir update-alternatives. Ancak bu ayarlanmadı JAVA_HOME bir ortam nedeniyle değişken borç politikası.

Bir java uygulamasını başlatan bir başlatıcı komut dosyası (bash) yazıyorum. Bu java uygulamasının JAVA_HOME Çevre değişkeni. O halde, şu anda tarafından seçilen JVM'nin yolunu nasıl alabilirim? update-alternatives?


90
2018-05-20 15:09


Menşei




Cevaplar:


JRE için böyle bir şey hile yapmalı:

JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")

133
2018-05-20 17:55



JRE yerine JDK'nın evine ihtiyacım vardı, ama şunu kullanarak aldım: JAVA_HOME = $ (readlink -f / usr / bin / javac | sed "s: bin / javac ::") Teşekkürler! - Witek
komutu denediğimde echo $(readlink -f /usr/bin/java | sed "s:bin/java::"), çıktı /usr/lib/jvm/java-7-oracle/jre/ ve yok /usr/lib/jvm/java-7-oracle/ - Sumit Ramteke
Kod verilen rsaddey doğru çalışıyor - Sumit Ramteke


danadam'ın çözümü, gerektiğinde JDK (yani JRE değil) yolunu almak için kolayca benimsenebilir:

JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::")
  • JDK'da bulunan javac Java derleyicisine (java yerine) bakar (JRE değil).
  • Hiç bir iz yok / (sed s: / bin ile sıyrılmış ... yerine s: bin ...)

43
2018-06-02 08:44





export JAVA_HOME=$(dirname $(dirname $(readlink -f /usr/bin/java)))

İçinde .bashrc benim için kullanışlıdır.


12
2018-04-25 09:34





Yani, bu komutun senin için hiçbir şey yapmadığını mı söylüyorsun?

sudo update-alternatives --config java 

9
2018-05-20 15:14



Bu JAVA_HOME'nuzu ayarlamanız mı gerekiyor? Güncelleme-java-alternatifleri, güncelleme alternatifleri Java ile ilgili alternatifleri güncellemediğinden, Java'yı güncellemenin daha iyi bir yolunu buldum. Görmek askubuntu.com/questions/141791 - James McMahon
Doğru, ancak güncelleme alternatifleri olan ancak güncelleme-java-alternative yüklü olmayan Linux örnekleri ile karşılaştım. - djangofan


Java'yı kurdum

sudo apt-get install openjdk-7-jre-headless

ve sonra yerini bulmak için

ls -al /etc/alternatives/java

3
2018-03-05 03:40





Danadams bir uzantısı olarak:

Her şeyden önce, "3" önceliği ile 2. Java JRE'yi 3. java seçeneği olarak kurun:

sudo alternatives --install /usr/lib/jvm/jre jre /opt/IBM/java/jre/bin/java 3

Sonra bunları listeleyebilirsiniz:

update-alternatives --list java

Alternatifini aşağıdakileri kullanarak elle ayarlayabilirsiniz:

sudo alternatives --config java /opt/IBM/java/jre/bin/java

Ardından, komut dosyanız bunu şu şekilde ayarlayabilir:

sudo alternatives --set java /opt/IBM/java/jre/bin/java
JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")

Bu, 'sed' komutunun ne yaptığını daha iyi gösterir. Her ne kadar hala javaw ve javac vb. İçin linkleri ayarlamanız gerekiyorsa da, her biri ayrı ayrı yapılır.


2
2018-03-02 16:40





Bir süre önce Ubuntu forumunda Java web sitesinden en yeni JRE / JDK'yı nasıl kuracağımız konusunda bir eğitim oluşturdum. Ayrıca, JRE / JDK konumunu PATH değişkenine ekleyerek sistem genelinde nasıl etkinleştirileceğini de kapsar. İsterseniz, konunun sonunda belirtilen betiğe JAVA_HOME da ekleyebilirsiniz.

Buna bir bak: http://ubuntuforums.org/showthread.php?t=1437100


1
2018-05-20 18:47