Vad är JDK? Introduktion till Java Development Kit

Java Development Kit (JDK) är ett av tre kärnteknologipaket som används i Java-programmering, tillsammans med JVM (Java Virtual Machine) och JRE (Java Runtime Environment). Det är viktigt att skilja mellan dessa tre tekniker och förstå hur de är anslutna:

  • JVM är Java-plattformskomponenten som kör program.
  • JRE är den inbyggda delen av Java som skapar JVM.
  • JDK tillåter utvecklare att skapa Java-program som kan köras och köras av JVM och JRE.

Utvecklare som är nya för Java förväxlar ofta Java Development Kit och Java Runtime Environment. Skillnaden är att JDK är ett paket med verktyg för att utveckla Java-baserad programvara, medan JRE är ett paket med verktyg för att köra Java-kod.

JRE kan användas som en fristående komponent för att helt enkelt köra Java-program, men det är också en del av JDK. JDK kräver en JRE eftersom att köra Java-program är en del av att utveckla dem.

Figur 1 visar hur JDK passar in i Java-applikationsutvecklingslivscykeln.

Matthew Tyson

Precis som vi gjorde med min senaste introduktion till Java Virtual Machine, låt oss överväga de tekniska och vardagliga definitionerna av JDK:

  • Teknisk definition: JDK är en implementering av Java-plattformsspecifikationen, inklusive kompilator- och klassbibliotek.
  • Daglig definition: JDK är ett programvarupaket som du laddar ner för att skapa Java-baserade applikationer.

JDK & Java-kompilatorn

Förutom JRE, som är den miljö som används för att köra Java-applikationer, innehåller varje JDK en Java-kompilator. Den kompilator är programvaran kan ta rå .java filer - som är vanlig text - och gör dem till körbara .class filer. Vi ser kompilatorn i aktion snart. Först visar jag dig hur du laddar ner och konfigurerar en JDK i din utvecklingsmiljö.

Kom igång med JDK

Att få Java-inställningar i din utvecklingsmiljö är lika enkelt som att ladda ner en JDK och lägga till den i din klassväg. När du laddar ner din JDK måste du välja den version av Java du vill använda. Java 8 är den version som oftast används, men i skrivande stund är Java 11 den långsiktiga supportversionen (LTS). Java bibehåller bakåtkompatibilitet, så vi laddar bara ner den senaste versionen.

JDK-paket

Förutom att välja din Java-version måste du också välja ett Java-paket. Paket är Java-utvecklingssatser som är riktade för olika typer av utveckling. De tillgängliga paketen är Java Enterprise Edition (Java EE), Java Standard Edition (Java SE) och Java Mobile Edition (Java ME).

Nybörjare är ibland osäkra på vilket paket som är rätt för deras projekt. Generellt innehåller varje JDK-version Java SE. Om du laddar ner Java EE eller Java ME får du standardutgåvan med den. Till exempel är Jave EE standardplattformen med ytterligare verktyg som är användbara för företagsapplikationsutveckling som Enterprise JavaBeans eller stöd för Object Relational Mapping.

Det är inte heller svårt att byta till en annan JDK i framtiden om du tycker att du behöver. Oroa dig inte för mycket för att välja rätt Java-version och JDK-paket när du precis börjar.

JDK-versionskompatibilitet

Eftersom JDK levererar kompilatorn för dina Java-program, bestämmer JDK du använder vilken Java-version du kan koda i. Om du till exempel vill använda de nyare funktionella programmeringsfunktionerna som finns i Java 8 (som pilen Lambda-operatören) , då behöver du åtminstone Java 8 JDK för att kompilera. Annars kommer javackommandot att avvisa koden med ett syntaxfel.

Ladda ner JDK

Vi kommer att hålla fast vid Java SE för den här handledningen, så att vi kan fokusera på de viktigaste JDK-klasserna och teknologierna. För att ladda ner Java SE JDK, besök Oracles officiella nedladdningssida. Du ser de olika tillgängliga JDK-paketen, som visas i figur 2.

Matthew Tyson

Innan du väljer Java SE nedladdning, ta en minut att titta på de andra alternativen. Det finns mycket matlagning i Java-köket!

Om Java EE

Du skulle ladda ner en Java EE JDK om du främst var intresserad av att bygga Java-baserade webbapplikationer. Java EE JDK innehåller Java Servlet-specifikationen, som stöder HTTP-begäranhantering. Varje Java EE JDK-implementering kräver också en container , som är en server som kör Java EE-applikationer. Glassfish är implementeringen av Java EE-serverreferensen för Oracle. Andra populära implementeringar är Tomcat och Jetty.

För nu, fortsätt och ladda ner Java Standard Edition JDK.

Installera JDK

När du kör JDK-installationsprogrammet erbjuds du ett urval av tre komponenter: Utvecklingsverktyg , Källkod och Offentlig JRE . Du kan installera en eller alla av dem. I det här fallet väljer du bara standard.

Att installera alternativet "Utvecklingsverktyg" ger dig JDK. Installera "Källkod" innehåller källorna för de offentliga klasserna i Java-API-kärnan. Med detta alternativ kan du referera till källkoden när du bygger appar. Det tredje alternativet, "Public JRE", driver hem att JDK och JRE är separata enheter: den offentliga JRE kan användas av andra program för att köra Java-program och kan installeras separat från JDK.

Fortsätt och installera alla tre komponenterna och acceptera standardvärdena för var och en. Att göra detta innebär att din JDK och JRE kommer att installeras på standardplatserna för ditt operativsystem. På Windows är det C: \ Program Files \ Java , som visas i figur 3.

Matthew Tyson

JDK på kommandoraden

Installera JDK och JRE lägger till javakommandot i din kommandorad. Du kan verifiera detta genom att släppa in i ett kommandoskal och skriva java -version, vilket ska returnera Java-versionen du installerade. (I vissa fall måste du starta om ditt system för att den här ändringen av systemvägen ska kunna tas till fullo.)

Det är bra att ha javainstallerat, men hur är det javac? Du behöver detta JDK-element för att kompilera dina Java-filer.

Javac-kommandot

Den javackommandot bor inne i /jdkkatalogen, men inte automatiskt till systemvägen under installationen. Vi har möjlighet att installera javacoss själva, eller så kan vi installera en IDE som innehåller detta kommando. Vi börjar med att kompilera och köra ett Java-program på det gammaldags sättet.

Ett enkelt Java-program

Steg 1. Skriv ett enkelt Java-program

Skapa en ny textfil, ring Intro.javaoch placera den någonstans på din dator, som din Dokumentmapp.

Lägg sedan till koden från Listing 1, som är ett mycket enkelt Java-program.

Listing 1. Intro.java

 public class Intro { public static void main(String[] args) { System.out.println("Welcome to the JDK!"); } } 

Steg 2. Kompilera med JDK

Använd sedan JDK-kompilatorn för att förvandla din textfil till ett körbart program. Kompilerad kod i Java kallas bytecode och bär .classtillägget.

Du använder javackommandot, som står för Java-kompilator. Skriv hela sökvägen till kommandot i ditt kommandoskal och skicka Intro.javafilen som ett kommando. På mitt system ser det ut som Listing 2.

Listning 2. Kompilera med JDK

 "C:\Program Files\Java\jdk-10.0.1\bin\javac.exe" Intro.java 

Det borde resultera i en framgångsrik sammanställning. Den javacsvarar inte med ett framgångsmeddelande; det kommer bara att mata ut den nya filen. Eventuella fel kommer att resultera i konsolutdata.

Steg 3. Kör .class-filen

Du bör nu se Intro.classfilen i samma katalog som Intro.java.

Du kan köra den genom att skriva:, java Introvilket resulterar i Listing 3. Observera att du inte inkluderar .classnär du skriver det här kommandot.

Listing 3. Running Intro.class

 C:\Users\mtyson\Documents>java Intro Welcome to the JDK! 

Jar-kommandot

Det javacär JDK: s stjärna, men /binkatalogen innehåller andra verktyg du behöver. Förmodligen den mest framträdande efter javacär jarverktyget.

En .jar-fil är en förpackad uppsättning Java-klasser. När kompilatorn har skapat .classfilerna kan utvecklaren sätta ihop dem på ett .jar, vilket komprimerar och strukturerar dem på ett förutsägbart sätt.

Låt oss konvertera Intro.classtill en jarfil.

Navigera tillbaka till katalogen där du placerade din Intro.javaoch skriv kommandot du ser i Listing 4.

Lista 4. Skapa en JAR-fil

 C:\Users\mtyson\Documents>"c:\Program Files\Java\jdk-10.0.1\bin\jar.exe" --create --file intro.jar Intro.class 

Kör burken

Nu ser du en intro.jarfil i katalogen. Du kan använda den .jargenom att lägga till den i din klassväg och köra programmet inuti, som visas här:

 java -cp intro.jar Intro 

Den -cpbrytaren berättar Java för att lägga till jari klassökvägen. En .jar-fil är överdriven för det här lilla programmet, men de är oumbärliga eftersom program växer i storlek och är beroende av paket från tredje part.

JDK i din IDE

När du ser tillbaka på JDK-nedladdningssidan kanske du har märkt möjligheten att ladda ner JDK med Netbeans IDE. En IDE , eller integrerad utvecklingsmiljö, är programvara som tillhandahåller en sammanhängande uppsättning verktyg för att utveckla applikationer. Tänk på en IDE som ett visuellt operativsystem med en uppsättning verktyg, som en filbläddrare och textredigerare, med ytterligare funktioner som är specifika för utveckling, som att slutföra kod och formatering.

I Java-utveckling är en av de viktigaste sakerna som IDE gör att hantera sammanställning för dig. Det vill säga IDE kör automatiskt kompileringsprocessen i bakgrunden så att du inte alltid behöver göra det själv. En IDE ger också återkoppling från gång till gång när du går och fångar kodfel i farten.

Flera solida IDE finns för Java. Du har sett hur JDK fungerar på kommandoraden, så nu ska vi ta en snabb titt på hur det fungerar i Eclipse IDE.

[Se även: Välja din Java IDE: Jämföra Eclipse, NetBeans och Intellij IDE för funktioner, användbarhet och projektstorlek och typ]

Förmörkelse och JDK

Installering av Eclipse omfattas inte av denna guide, men det är en enkel process. Eclipse innehåller ett installationsprogram som alla andra program, och du hittar rätt installationsprogram för ditt operativsystem här.

När Eclipse är installerat öppnar du menyalternativet Window i menyraden och väljer inställningar .

Inuti inställningsfönstret ser du Java- objektet. Öppna den och inuti ser du Compiler- objektet. Om du klickar på detta visas några alternativ för JDK.

Figur 4 visar en skärmdump av JDK-alternativen i Eclipse.

Matthew Tyson

Som tidigare nämnts måste du välja rätt JDK-version för ditt projekt. Under huven kommer IDE att köra JDK-kompilatorn, precis som du körde den från kommandoraden. Eclipse IDE har också sin egen JDK-instans. IDE hanterar JDK och JRE åt dig, vilket gör livet mycket enklare!

Slutsats

Den här artikeln är den andra i en kort serie som introducerar tre centrala Java-plattformskomponenter: JVM, JDK och JRE. Leta efter nästa artikel i serien, där du lär dig allt om Java Runtime Environment.

Denna berättelse, "Vad är JDK? Introduktion till Java Development Kit" publicerades ursprungligen av JavaWorld.