Już dostępny

Program Szkoleniowy Java Developer dostępny 🔥💪 tylko TERAZ za 1299 zł  Sprawdź szczegóły i agendę

Zakres

Monitoring • Apache Kafka • Clean Code Testowanie • Hibernate • Systemy kolejkowe Sprawdź szczegóły i agendę

Zakres

14 modułów  /  ponad 40h nagrań  /  230 lekcji  /  dożywotni dostęp  /  Sprawdź szczegóły i agendę

Wiele wersji Java na komputerze 🎨 – SDKMAN

utworzone przez 20 grudnia 2020Java, Tip and Tricks

[Szybkie info]: Startujemy z IV edycją Programu Szkoleniowego Java Developera 🚀. To MEGA piguła wiedzy o Java 🔥💪

  • 14 tygodniowy program szkoleniowy online,
  • 230 lekcji w formie video (40 godzin materiału)
  • z dożywotnim dostępem
  • Case Studies, masz dostęp do kodu i obrazów Dockerowych
  • zamknięta grupa mentorzy + uczestnicy i webinary na żywo

W agendzie znajdziesz: Mikroserwisy, Systemy kolejnowe, Apache Kafka, Caching, Hibernate/MyBatis/Spring Data, techniki efektywnych Testów kodu, Clean Code i Maven.

Tylko teraz dołączysz z 50% rabatem to 2699 zł 1299 zł (+VAT). I nigdy już nie będzie taniej. Poniżej dowiesz się więcej:

Zobacz więcej

A teraz przechodzimy do artykułu:

Dziś krótko o narzędziu SDKMAN. Od Java 9 zmieniony został schemat wersjonowania (z 1.X na X). Cykl wydawniczy również przyspieszył. Możliwe, że w projektach używamy danej wersji Java, a pojawia się nowa i chcielibyśmy posmakować nowej wersji lub spróbować przeportować projekt. Finalnie na naszej maszynie mamy kilka JDK.

Przełączenie JDK (Java Development Kit) to proces składający się z:

  • Instalacji wybranej JDK pod naszą platformę
  • Konfiguracji: zmianę zmiennych $JAVA_HOME i $PATH

Przedstawiam SDKMAN

Dla tych, którzy nie znają jeszcze tego narzędzia przedstawiam SDKMAN (SDK Manager).

logo sdkman
Logo SDKMAN

SDKMAN to narzędzie oryginalnie stworzone dla *nix-owych systemów operacyjnych. W prosty sposób pozwala na pobieranie i przełączanie się pomiędzy różnymi SDK na maszynie.

Wspiera instalację wielu środowisk SDK, np. dla Java, Groovy, Scala, Kotlin, Maven, Micronaut. Poprzednio znane jako GVM (Groovy enVironment Manager).

W tym wpisie skupię się na instalacji narzędzia na Windows i pokrótce przejdę przez najważniejsze funkcje.

Ważne: zakładam, że na swojej maszynie używasz Git Bash Shell.

Przygotowanie środowiska Windowsa

SDKMAN to skrypt napisany w bash. Dlatego, aby został poprawnie zinterpretowany powinieneś mieć konsole bashową pod Windows, np. Git Bash Shell.

Środowisko Git Bash (MinGW) posiada skompilowane pod Windows odpowiedniki linuxowych narzędzi, których używa skrypt. Brakuje w nim jednak programu zip.

Popularnym odpowiednikiem jest 7zip. Po instalacji 7zip upewniamy się, czy komenda jest dostępna z poziomu środowiska bash. Wprowadzasz go na $PATH lub tworzysz link symboliczny do folderu MinGW, który już jest na $PATH:

ln -s /c/Program\ Files/7-Zip/7z.exe /c/Program\ Files/Git/mingw64/bin/zip.exe

Teraz możesz zainstalować SDKMAN.

Instalacja SDKMAN

Aby zainstalować menedżera, postępuj zgodnie ze wskazówkami na https://sdkman.io/. Należy wykonać komendę pobierającą i uruchamiającą skrypt basha:

curl -s "https://get.sdkman.io" | bash

Narzędzie zostanie pobrane do folderu ~/.sdkman (w folderze użytkownika).

Zrestartuj konsolę i możesz używać SDKMAN:

$ sdk version

SDKMAN 5.9.1+575

Instalacja SDK

Pora na instalację SDK.

$ sdk list

Możesz wyszukać taką wersję Java oraz dostawcę implemenracji, która Ci odpowiada:

$ sdk list java
================================================================================
Available Java Versions
================================================================================
 Vendor        | Use | Version      | Dist    | Status     | Identifier
--------------------------------------------------------------------------------

...

 Java.net      |     | 17.ea.2      | open    |            | 17.ea.2-open
               |     | 16.ea.29     | open    |            | 16.ea.29-open
               |     | 16.ea.9.lm   | open    |            | 16.ea.9.lm-open
               |     | 16.ea.3.pma  | open    |            | 16.ea.3.pma-open
               |     | 15.0.1       | open    |            | 15.0.1-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.2       | open    |            | 11.0.2-open
               |     | 10.0.2       | open    |            | 10.0.2-open
               |     | 9.0.4        | open    |            | 9.0.4-open
               |     | 8.0.265      | open    |            | 8.0.265-open

...

================================================================================
Use the Identifier for installation:

    $ sdk install java 11.0.3.hs-adpt
================================================================================

Zainstaluję zatem OpenJDK 11.0.2:

$ sdk install java 11.0.2-open
Downloading: java 11.0.2-open

In progress...

######################################################################## 100,0%

Installing: java 11.0.2-open
Done installing!

Po instalacji JDK jest dostępne, zmienne środowiskowe zostały zmodyfikowane i mogę korzystać z Java:

$ java -version
openjdk version "11.0.2" 2019-01-15
OpenJDK Runtime Environment 18.9 (build 11.0.2+9)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.2+9, mixed mode)

Gdyby była potrzeba znajomości ścieżki JDK, Java zainstalowała się nam w katalogu użytkownika ~/.sdkman/candidates/:

$ ls -1 ~/.sdkman/candidates/java/
11.0.2-open/
current/

Psst… Interesujący artykuł?

Jeżeli podoba Ci się ten artykuł i chcesz takich więcej – dołącz do newslettera. Nie ominą Cię materiały tego typu.

.

Przełączanie się pomiędzy wersjami SDK

Na mojej maszynie mam OpenJDK w wersjach 11.0.2 oraz starszą wersję 8.0.265. Aby przełączyć się na inną wersję, wpisz sdk use:

$ sdk use java 8.0.265-open

Using java version 8.0.265-open in this shell.

$ java -version
openjdk version "1.8.0_265"
OpenJDK Runtime Environment (build 1.8.0_265-b01)
OpenJDK 64-Bit Server VM (build 25.265-b01, mixed mode)

Od teraz w aktywnym terminalu jest aktywne wybrane SDK.

Domyślny SDK

Aby zmienić domyślne SDK na inne, otwierane w każdym nowym terminalu, korzystamy z komendy sdk default:

$ sdk default java 11.0.2-open

Default java version set to 11.0.2-open

Zakończenie

Pełną listę komend znajdziesz wpisując sdk help oraz na stronie https://sdkman.io/. Mam nadzieję, że się przyda 👌.

Podoba Ci się ten artykuł? Weź więcej.

Jeżeli uważasz ten materiał za wartościowy i chcesz więcej treści tego typu – nie przegap ich i otrzymuj je prosto na swoją skrzynkę. Nawiążmy kontakt.

.

Gdybyś potrzebował jeszcze więcej:

Jesteś Java Developerem?

Przejdź na wyższy poziom wiedzy 
„Droga do Seniora” 🔥💪

Jesteś Team Leaderem? Masz zespół?

Podnieś efektywność i wiedzę swojego zespołu 👌

Czym jest SDKMAN?

SDKMAN to narzędzie oryginalnie stworzone dla *nix-owych systemów operacyjnych w prosty sposób pozwala na pobieranie i przełączanie się pomiędzy różnymi SDK na maszynie. Wspiera instalację wielu środowisk SDK, np. dla Java, Groovy, Scala, Kotlin, Maven, Micronaut.

Jak używać SDKMAN?

Podstawowe komendy to: sdk install, sdk use, sdk default.

Dyskusja