Linux'ta kurulu tüm java sürümlerini görmek için komut nedir?


36

Java sürümünü biliyorum. Şu anda hangi sürümü kullanıyorum umrumda değil . Linux kutumda hangi sürümlerin yüklü olduğunu önemsiyorum. Başka bir java ise - * komutu java -help içinde görmedim.

Google'ı denedim ama cevaplar ya Windows için ya da "java -version kullan" diyorlar. Bunu daha önce yaptığımı biliyorum.

Yanıtlar:


50

Çoğu Linux dağıtımında şu şekilde kullanabilirsiniz update-alternatives:

sudo update-alternatives --config java

Java komutu sağlayan tüm paketleri listeler ve değiştirmenize izin verir. Değiştirmek istemiyorsanız, basitçe Ctrl-Condan.

Sadece şu var ki - Biraz yüklü ise javaresmi paket yöneticisini kullanarak değil ( dpkg/ apt-get, rpm/ yum), ancak sadece o, güncelleme-alternatifleri olacak çıkarılan değil göstermek.


2
update-alternatives --list javaSadece onları listelemek için kullanmamak için herhangi bir sebep var mı?
Xiao,

4
@ Xiao: Maalesef, güncelleme alternatiflerinin tüm sürümlerinde --listseçenek yoktur. örneğin Centos 6.7 değil.
mvp

1
RHEL 7'de - liste var, ancak başka parametreler almıyor, bu yüzden yapmanız gereken| grep java
Dmitri

4

Yapabilirsin:

find / -name java 

Tüm dosyaları bulmak için. Linux sürümünüzle paket yöneticisi bunları da listeleyebilmelidir.


3
"paket yöneticisi" ... Biri elle bir java sürümünü kurmazsa. Bul geçerli bir yaklaşım olsa da :) bul / -type f -name java -print 2> / dev / null | xargs -i echo {} -versiyon | bash
tink

@tink xargs ile find'i nasıl kullanırsınız, ancak birden fazla 'java' çalıştırılabilir dosyası olduğunda her bir sürüm sonucu arasına boş bir satır ekler misiniz?
Lee Meador

@LeeMeadorfind /usr -type f -name java -print 2>/dev/null | xargs -i echo {} -version | bash 2>&1 | sed ':a;N;$!ba;s/\n/\n\n/g'
tink

1

Kurulumunuzla ilgili ayrıntılar kadarıyla, istediğiniz kadar çok şey bırakıyorsunuz. Java linux'ta farklı şekillerde yüklenebilir. Apt, yum, yast gibi dağıtım paketinizdeki maanger aracılığıyla yükleyebilir veya elle yükleyebilirsiniz.

Nasıl yüklediyseniz, bir Java kurulumunda java çalıştırılabilir dosyaların çoğu durumda herhangi bir işlem yapması gerekir, bu nedenle farklı olanları bulmak için konumlandırmayı veya komutları bulabilmenizi sağlar.

Büyük olasılıkla bağlantıları ve kopyaları bulabilecek olan örnek, ancak dizin adları onu belirlemenize yardımcı olacaktır:

for f in $(locate -ber '^java$'); do test -x && echo "$f"; done

1

Kullanılabilir Java kurulumlarını listelemek için bunu kullanıyorum:

sudo update-alternatives --display java

bash: update-alternatives: command not found?
Jimmy Obonyo Abor,

1

Varsayılan olarak ayarlanmamış bir java sürümünü kullanabilmesi için bir ortam değişken kümesi gerektiren bir uygulamanın java 8 kurulumunu belirlemek için daha önce aşağıdakileri kullanıyordum:

update-java-alternatives -l java-8-oracle

Ancak, bugün çalışmayı durdurdu. update-java-alternativesScript / program artık benim Ubuntu 14.04 sistemde yüklü. Şimdi yüklü olan alternatives.

Şimdi java yolunu belirli bir alternatif almak için kullanıyorum:

alternatives --display java | grep priority | grep jdk-1.8

Daha sonra, uygulamamın çevre değişkeni için ihtiyacım olanı elde etmek için sonucu masajlayabilirim.

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.