Guide til SDKMAN!
1. Oversikt
Med den nye utgivelsessyklusen til Java, kan det hende at utviklere trenger å administrere parallelle versjoner og forskjellige utgaver av Software Development Kits (SDK) i sitt miljø. Så innstilling av PATH-variabelen kan til tider bli en virkelig smerte.
I denne opplæringen vil vi se hvordan SDKMAN! kan hjelpe deg med å administrere installasjonen og utvalget av SDK-er enkelt.
2. Hva er SDKMAN !?
SDKMAN! er et verktøy for å administrere parallelle versjoner av flere SDKer, hvilken SDKMAN! kalle “kandidater”.
Det gir et praktisk Command-Line Interface (CLI) og API for oppføring, installering, bytte og fjerning av kandidater. Videre tar det vare på å sette miljøvariabler for oss.
Det lar også utviklerne installere JVM-baserte SDKer som Java, Groovy, Scala, Kotlin og Ceylon. Maven, Gradle, SBT, Spring Boot, Vert.x og mange andre støttes også. SDKMAN! er et gratis, lett, åpen kildekodeverktøy skrevet i Bash.
3. Installer SDKMAN!
SDKMAN! støttes av alle større operativsystemer, og den kan enkelt installeres på alle Unix-baserte systemer. Videre støtter den Bash og Zsh-skall.
Så la oss begynne med å installere den ved hjelp av terminalen:
$ curl -s "//get.sdkman.io" | bash
Følg deretter instruksjonene på skjermen for å fullføre installasjonen.
Vi trenger kanskje zip- og pakkepakker installert for å fullføre installasjonsprosessen.
Deretter åpner du en ny terminal eller kjører:
$ kilde "$ HOME / .sdkman / bin / sdkman-init.sh"
Til slutt kjører du følgende kommando for å sikre at installasjonen fungerte. Hvis alt gikk bra, bør versjonen vises:
$ sdk versjon SDKMAN 5.8.5 + 522
For mer tilpasning, se installasjonsveiledningen på SDKMAN! nettsted.
For å se alle tilgjengelige kommandoer, bruk hjelp kommando:
$ sdk hjelp
4. Liste opp alle SDK-kandidater
Så la oss starte med å liste opp alle tilgjengelige SDK-kandidater.
$ sdk-liste
De liste kommando viser alle tilgjengelige kandidater, identifisert med et unikt navn, beskrivelsen, det offisielle nettstedet og installasjonskommandoen:
===================================================== === Tilgjengelige kandidater ================================================= ======== q-avslutte / -søk ned j-ned? -søk opp k-opp h-hjelp ---------------------- ------------------------------- Java (11.0.7.hs-adpt) //zulu.org ... $ sdk installere java ----------------------------------------------- ------ Maven (3.6.3) //maven.apache.org ... $ sdk installer maven ------------------------ ----------------------------- Spring Boot (2.3.1.RELEASE) //spring.io ... $ sdk install springboot -------------------------------------------------- ---- ...
Derfor kan vi bruke denne identifikatoren til å installere standardversjonen av en kandidat som Spring Boot (2.3.1.RELEASE) eller Maven (3.6.3). De spesifiserte versjonene i denne listen representerer stabile eller LTS-versjoner av hver SDK.
5. Installer og administrer Java-versjoner
5.1. Listeversjoner
Hvis du vil liste opp tilgjengelige versjoner av Java, bruker du liste kommando. Resultatet er en oppføringstabell gruppert av leverandøren og sortert etter versjon:
$ sdk liste java ================================================== ====================== Tilgjengelige Java-versjoner ============================ =========================================== Leverandør | Bruk | Versjon | Dist | Status | Identifikator ------------------------------------------------- ------------------ AdoptOpenJDK | | 14.0.1 | adpt | | 14.0.1.j9-adpt ... Amazon | | 11.0.8 | amzn | | 11.0.8-amzn ... Azul Zulu | | 14.0.2 | zulu | | 14.0.2-zulu ... BellSoft | | 14.0.2 | librca | | 14.0.2.fx-librca ... GraalVM | | 20.1.0 | grl | | 20.1.0.r11-grl ... Java.net | | 16.ea | åpne | | 16.ea.6-open ... SAP | | 14.0.2 | sapmchn | | 14.0.2-sapmchn ...
Vi trenger denne kommandoen hver gang vi vil kontrollere, bytte eller administrere lagring av kandidater.
5.2. Installer en Java-versjon
La oss si at vi vil installere den nyeste versjonen av Java 14 fra Azul Zulu. Derfor kopierer vi identifikatoren, som er versjonen fra tabellen, og vi legger den til som et argument i installere kommando:
$ sdk install java 14.0.2-zulu Nedlasting: java 14.0.2-zulu Pågår ... ########### 100,0% Ompakking Java 14.0.2-zulu ... Ferdig ompakking ... Installere: java 14.0.2-zulu Installasjon fullført! Angi java 14.0.2-zulu som standard.
SDKMAN! vil laste ned og pakke ut denne versjonen til en katalog på datamaskinen vår.
Videre vil den oppdatere miljøvariabler slik at vi kan bruke Java i terminalen umiddelbart.
Vi kan bekrefte statusen og bruken av hvilken som helst versjon ved å bruke liste kommando. Følgelig versjonen 14.0.1 is nå installert og i bruk:
$ sdk liste java ================================================== ==================== Tilgjengelige Java-versjoner ============================== ======================================= Leverandør | Bruk | Versjon | Dist | Status | Identifikator ------------------------------------------------- ---------------- ... Azul Zulu | >>> | 14.0.1 | adpt | installert | 14.0.1.j9-adpt ...
I tillegg er det mulig å installere Java eller en hvilken som helst tilpasset versjon fra en datamaskin med samme kommando, men ved å spesifisere banen til binærfiler som et ekstra argument:
$ sdk installer java custom-8 ~ / Nedlastinger / my-company-jdk-custom-8
5.3. Bytte mellom versjoner
Vi kan kontrollere byttingen mellom versjoner i to former, midlertidig:
$ sdk bruk java 14.0.1.j9-adpt
eller permanent:
$ sdk standard java 14.0.1.j9-adpt
5.4. Fjern en versjon
For å fjerne en installert versjon, kjør avinstallere kommando med målrettet versjon:
$ sdk avinstallere java 14.0.1.j9-adpt
5.5. Vis versjonene i bruk
For å sjekke den nåværende versjonen av Java, kjører vi nåværende kommando:
$ sdk gjeldende java Bruke java versjon 14.0.2-zulu
På samme måte har den siste kommandoen samme effekt som:
$ java -versjon
For å vise versjonen av SDK på maskinen vår, kan vi kjøre nåværende kommando uten argumenter:
$ sdk gjeldende Bruker: java: 14.0.2-zulu gradle: 6.2.2
6. Bruke SDKMAN! med IDE
De installerte SDK-ene lagres i SDKMAN! katalog som er standard til ~ / .sdkman / kandidater.
For eksempel vil de forskjellige versjonene av Java også være tilgjengelige under ~ / .sdkman / kandidater / java / katalog og underkataloger er oppkalt etter versjonene:
$ ls -al ~ / .sdkman / kandidater / java / totalt 0 drwxrwxrwx 1 brukerbruker 12 jul 25 20:00. drwxrwxrwx 1 brukerbruker 12 jul 25 20:00 .. drwxrwxr-x 1 bruker bruker 12 jul 25 20:00 14.0.2-zulu lrwxrwxrwx 1 bruker bruker 14 jul 25 20:00 nåværende -> 14.0.2-zulu
Derfor vil den valgte versjonen av Java også være tilgjengelig som aktuell i den katalogen.
I samme retning vil Gradle eller annen SDK installeres under kandidater katalog.
På denne måten kan vi bruke hvilken som helst bestemt versjon av Java, for eksempel i vår favoritt IDE. Alt vi trenger å gjøre er å kopiere banen til en bestemt versjon og sette den i konfigurasjonen av IDE.
6.1. IntelliJ IDEA
I IntelliJ IDEA åpner du "Prosjektstruktur" og deretter "Prosjektinnstillinger". I prosjektkonfigurasjonen kan vi legge til en ny Java-versjon ved å velge "Ny ..." fra "Prosjekt SDK" -delen:

Vi kan også definere versjonen av Java, Gradle eller Maven som skal brukes i delen "Byggverktøy":

Tips: Versjonen av Java må være den samme som brukt i “Project SDK” for Gradle eller Maven.
6.2. Formørkelse
I Eclipse åpner du "Project Properties", velger "Java Build Path", og bytter deretter til "Libraries" -fanen. Her kan vi administrere den nye SDK-en til Java via "Legg til bibliotek ..." og ved å følge instruksjonene:

Vi kan også kontrollere de installerte SDK-ene for alle prosjektene. Åpne "Innstillinger" under "Vindu" -menyen, og gå deretter til "Installerte JREer". Her kan vi administrere SDK for Java via "Legg til ..." og ved å følge instruksjonene:

7. Konklusjon
I denne veiledningen har vi vist hvordan SDKMAN! kan hjelpe oss med å administrere forskjellige versjoner av Java SDK-er blant andre Java-miljøverktøy som Maven.