Linux

Birden fazla Java sürümü Arasındaki SDKMAN Kullanarak / Switch nasıl


SDKMAN! macOS, Linux, BÖLGESEL, 209, Solaris ve FreeBSD üzerinde yazılım geliştirme kitleri birden çok sürümünü yönetmek için bir araçtır. Java, Groovy, Scala, Kotlin, Seylan, Karınca, Gradle kurmak ve yönetmek, ve çok daha fazlası.

Aracı RVM ve rbenv esinlenilmiştir, ve sadece / halletmek çözüm bulmak için (merak etme) Bash ile yazılmış olması sisteminizde bulunması zip curl ve gerektirir, Zsh ile de çalışır.

SDKMAN kullanarak Java yüklemek için bu makalede, nasıl gösterir! (yükleyici kullanarak, ya da kendi Java ikililer kullanarak çevrimdışı), ve yönetmek için ve kolayca varsayılan olarak Java sürümü ayarı, JAVA_HOME ortam değişkeni ayarı da dahil olmak üzere, ya da geçici olarak mevcut terminal oturumu için, ya da sadece belirli bir dizin için Java sürümleri geçiş) birden çok Java sürümleri kullanma.

1. Başlamak için,
bu SDKMAN yükleyin! komut satırı arayüzü.

2. Liste tüm aday Java sürümleri.

Şimdi bu SDKMAN! yüklenir, kullanmayı bırakalım. Tüm aday Java sürümlerini listelemek için bu komutu kullanın:

sdk list java

Bu listeler AdoptOpenJDK yükleyebilirsiniz sürümleri ve, Amazon JavaAzul Zulu OpenJDK, Java.net vb.

Bu “liste java” komutunu kullanırken gördün ne (çıkış oldukça büyük) bir alıntı:

$ sdk list java
...........................................................................
Available Java Versions
================================================================================
 Vendor        | Use | Version      | Dist    | Status     | Identifier
--------------------------------------------------------------------------------
 AdoptOpenJDK  | >>> | 14.0.2.j9    | adpt    | installed  | 14.0.2.j9-adpt      
               |     | 14.0.2.hs    | adpt    |            | 14.0.2.hs-adpt      
               |     | 13.0.2.j9    | adpt    |            | 13.0.2.j9-adpt      
               |     | 13.0.2.hs    | adpt    |            | 13.0.2.hs-adpt      
               |     | 12.0.2.j9    | adpt    |            | 12.0.2.j9-adpt      
               |     | 12.0.2.hs    | adpt    |            | 12.0.2.hs-adpt      
               |     | 11.0.8.j9    | adpt    |            | 11.0.8.j9-adpt      
               |     | 11.0.8.hs    | adpt    | installed  | 11.0.8.hs-adpt      
               |     | 8.0.262.j9   | adpt    |            | 8.0.262.j9-adpt     
               |     | 8.0.262.hs   | adpt    |            | 8.0.262.hs-adpt     
 Amazon        |     | 11.0.8       | amzn    |            | 11.0.8-amzn         
               |     | 8.0.262      | amzn    |            | 8.0.262-amzn        
 Azul Zulu     |     | 14.0.2       | zulu    |            | 14.0.2-zulu         
               |     | 13.0.4       | zulu    |            | 13.0.4-zulu         
               |     | 13.0.3.fx    | zulu    |            | 13.0.3.fx-zulu      
               |     | 12.0.2       | zulu    |            | 12.0.2-zulu         
               |     | 11.0.8       | zulu    |            | 11.0.8-zulu         
               |     | 11.0.7.fx    | zulu    |            | 11.0.7.fx-zulu      
               |     | 10.0.2       | zulu    |            | 10.0.2-zulu         
               |     | 9.0.7        | zulu    |            | 9.0.7-zulu          
               |     | 8.0.262      | zulu    |            | 8.0.262-zulu        
               |     | 8.0.252.fx   | zulu    |            | 8.0.252.fx-zulu     
               |     | 8.0.232.fx   | zulu    |            | 8.0.232.fx-zulu     
               |     | 7.0.262      | zulu    |            | 7.0.262-zulu        
               |     | 6.0.119      | zulu    |            | 6.0.119-zulu        
..........................................................................     
 Java.net      |     | 16.ea.6      | open    |            | 16.ea.6-open        
               |     | 15.ea.32     | open    |            | 15.ea.32-open       
               |     | 14.0.2       | open    |            | 14.0.2-open         
               |     | 13.0.2       | open    |            | 13.0.2-open         
               |     | 12.0.2       | open    |            | 12.0.2-open         
               |     | 11.0.7       | open    |            | 11.0.7-open         
               |     | 10.0.2       | open    |            | 10.0.2-open         
               |     | 9.0.4        | open    |            | 9.0.4-open          
               |     | 8.0.252      | open    |            | 8.0.252-open        
..........................................................................

Dikkat etme Identifier sütun. Bir Java sürümünü yüklemek için kullanmanız gereken paketin adı.

3. SDKMAN kullanarak bir Java sürümünü yükleyin.

Bir Java sürümünü yüklemek için kullanabileceğiniz komut:

sdk install java IDENTIFIER

Değiştirin IDENTIFIER Java sürümü tanımlayıcı olarak görülen sdk list java komut çıktısı.

Örneğin, 11.0.8 AdoptOpenJDK sürümünü yüklemek için.hs, yükleme komut:

sdk install java 11.0.8.hs-adpt

SDKMAN! ayrıca Java yerel bir sürümünü yüklemek, bu gibi olabilir:

sdk install java [UNIQUE-IDENTIFIER] /path/to/Java

14 en son Oracle Java örneğin indirin .tar.gz (eğer Oracle Java yükleyicisi kullanmıyorsanız), ayıklamak, sonra SDKMAN kullanın! kullanarak yüklemek için:

sdk install java 14.0.2-oracle ~/Downloads/jdk-14.0.2

4. Java sürümleri arasında geçiş.

SDKMAN! kullanarak Java sürümlerini yönetmek için 3 yol vardır:

  • varsayılan olarak bir Java sürümü
  • sadece geçerli bir terminal oturumu için bir Java sürümü kullanın
  • bir dizine girdiğinizde belirli bir Java sürümünü etkinleştirmek


A. varsayılan olarak Java sürümünü Ayarlayın.

Java sürümleri ayarlamak için SDKMAN kullanarak yüklü! (ne olursa olsun-yükleyici, yerel bir dizin veya varsayılan Java sürümü olarak inşa edilmiş, kullanımı kullanarak yüklü):

sdk default java IDENTIFIER

Değiştirin IDENTIFIER Java sürümü tanımlayıcı olarak görülen sdk list java komut çıktısı.

Örneğin, 11.0.8 AdoptOpenJDK sürüm yapmak için.varsayılan sistem Java sürümü kullanın hs:

sdk default java 11.0.8.hs-adpt

Bu da JAVA_HOME ortam değişkenini ayarlar ~/.sdkman/candidates/java/current.

Sadece geçerli bir terminal oturumu için B. bir Java sürümü:

sdk use java IDENTIFIER

Değiştirin IDENTIFIER Java sürümü tanımlayıcı olarak görülen sdk list java komut çıktısı.

Örneğin, geçerli bir terminal oturumu için Java versiyonu gibi 14.0.2 yerel olarak yüklü-oracle Java ayarlayın:

sdk use java 14.0.2-oracle

Bir dizine girdiğinizde C. belirli bir Java sürümünü Etkinleştirin.

Özel bir Java sürümünü kullanmak istediğiniz dizini bu çalıştırın:

sdk env init

Bir dosya adı .sdkmanrc şimdi bu dizinde oluşturuldu. Açın ve değerini değiştir java= Java sürümü tanımlayıcı için kullanmak istediğiniz, örneğin 11.0.8.hs-adpt 11.0.8 AdoptOpenJDK için.

Şimdi de çalıştırın sdk env bu dizinde Java sürümünü etkinleştirmek için yer buldum .sdkmanrc dosya veya SDKMAN düzen! yapılandırma dosyası (~/.sdkman/etc/configset sdkman_auto_env=true çok zaman SDK sürümleri otomatik olarak açık olan cd bir dizine.

SDKMAN ile bir Java sürümü kullanıyorsun! nasıl olursa olsun, (SDKMAN tarafından belirlenen) Java sürümü kullanılmakta kullanarak kontrol edebilirsiniz:

sdk current java

Ayrıca, doğrudan kullanımda geçerli sürümü hakkında Java sorabilirsiniz:

java -version
javac -version