Java kjøretidsmiljø

Java

logo
Grunnleggende data

utvikler Oracle
Gjeldende  versjon 1.8.0_291
( 20. april 2021 )
operativsystem Windows , Solaris , Linux , macOS
programmeringsspråk Java , C
Tillatelse Gratisprogramvare
Tysktalende Ja
www.oracle.com/de/

Den Java Runtime Environment ( engelsk Java Runtime Environment , kort tid JRE ) er den runtime miljø av Java-teknologi . Med det kjøres programmer ( Java-applikasjoner ) stort sett uavhengig av det underliggende operativsystemet. Det representerer en programvareplattform , også kalt en Java-plattform . Den definerer applikasjonsprogrammeringsgrensesnittene (API-er) tydelig og uavhengig av maskinen og inneholder den virtuelle maskinen (JVM) .

Opp til versjon 8 ble Java runtime-miljøet levert separat og måtte installeres spesielt på målsystemet. Fra versjon 9 leveres og installeres kjøretidsmiljøet sammen med Java Development Kit . For å kjøre et Java-program på et system der det ikke er installert et Java-runtime-miljø, må Java-applikasjonen være koblet til Java runtime-miljøet.

eiendommer

Generelt består kjøretidsmiljøet av Java Virtual Machine ( Java VM ), som er ansvarlig for å kjøre Java-applikasjonene, et programmeringsgrensesnitt ( API , for applikasjons- og programmeringsgrensesnitt ) og andre programbiblioteker . Den API gir standard klasser i Java programmeringsspråk , for eksempel " java.lang.String". Den virtuelle maskinen og API-en må koordineres med hverandre og kombineres derfor for å danne JRE. Dette kan sees på som en virtuell datamaskin, som gir et antall prosessorer i en virtuell maskin og en API som det øverste biblioteklaget.

Java kjøretidsmiljø inneholder ikke utviklingsverktøy som kompilatorer . For programmering med Java er Java Development Kit ( JDK ) eller ethvert annet programmeringsmiljø, som også Java - bytecode genererte behov.

Spesielle funksjoner for Microsoft Windows

Den Java -kontrollpanelet er en utvidelse for kontrollpanelet Microsoft Windows. Innstillinger for Java runtime-miljøet (JRE) kan gjøres der. Under installasjonen blir filen jpicpl32.cpl eller javacpl.cpl lagt til i Windows-systemkatalogen.

Utgaver

Siden Java 2 dukket opp, har Java runtime-miljøet i form det gjøres tilgjengelig av Sun blitt delt inn i utgaver , siden Java-applikasjoner kan brukes på forskjellige enheter med forskjellige egenskaper, fra mobile enheter til stasjonære datamaskiner til servere :

Java Platform Java-kort
Lar Java-kortappletter utføre en redusert Java-standard etter Java-appletter på chipkort.
Java Platform, Micro Edition ( Java ME )
Plattform for såkalte innebygde forbrukerprodukter , som smarttelefoner eller nettbrett.
Java Platform, Standard Edition ( Java SE )
Samling av Java-programmeringsgrensesnitt for generell bruk på PCer, servere eller lignende enheter. Java SE fungerer som grunnlag for Java EE og Java ME-teknologier.
Java Platform, Enterprise Edition ( Java EE )
Java SE, beriket med programmeringsgrensesnitt for transaksjonsbasert kjøring av flerlags bedrifts- og webapplikasjoner.

Standard- og Enterprise-utgavene bruker samme virtuelle maskin ( Java Virtual Machine , JVM), men programmeringsgrensesnittet i Enterprise Edition suppleres med en rekke tilleggsbiblioteker og tilleggsprogrammer (spesielt for applikasjonsserveren ). Jakarta EE (tidligere Java EE) skal først og fremst forstås som en spesifikasjon, for bruk som hovedsakelig brukes kommersielle produkter fra andre produsenter eller programvare med åpen kildekode .

Versjonsinformasjon er beskrevet i artikkelen / seksjonen Java Technology #Versions .

Andre varianter

I tillegg til implementeringene fra Sun Microsystems ( Oracle siden 2010 ), som vanligvis brukes som referanse, er det generelle JVM-er fra IBM . For Java i sanntid eller for spesielle innebygde systemer er både gratis implementeringer av Java-plattformen ( Kaffe , JamaicaVM ) og forskjellige prosjekter fra selskaper og universiteter kjent. Java-komponentene til Android-plattformen for mobile enheter danner en annen Java-plattform som bare delvis består av SUN-komponenter.

APIer

Sun Microsystems tilbyr en rekke programmeringsgrensesnitt ( APIer ) for implementering av programvareprosjekter og skiller mellom de som er relevante for alle typer Java-applikasjoner (Core Java Technology) og de som bare er for Desktop-applikasjoner er relevante (Desktop Java Technology) .

Kjerneteknologi

Sun grupperer programmeringsgrensesnitt som er nyttige for både server- og skrivebordsprogrammer under begrepet Core Java Technology . Disse programmeringsgrensesnittene danner derfor kjernen i Java-teknologi.

sikkerhet

Mye oppmerksomhet ble gitt til sikkerhetsemnet de første dagene av Java, for eksempel lever Java-applets i en såkalt sandkasse , som skal forhindre at de forårsaker skade på den lokale datamaskinen. Nyere utvidelser gjelder temaene for kryptering og verifisering av identiteten til kommunikasjonsdeltakere ( autentisering ).

Databasetilgang

Tilgang fra Java til SQL - databaser via et programmeringsgrensesnitt kalt Java Database Connectivity (JDBC, German Java database connectivity).

Feilsøking

En hel arkitektur kalt Java Platform Debugger Architecture ble definert for å koble feilsøkere til virtuelle maskiner .

dokumentasjon

Den Javadoc verktøyet genererer HTML- filer fra Java kildeteksten , som gir en god oversikt over hele klassebiblioteker . Muligheten for å legge til fritt definerte plugin-moduler betyr at andre typer filer også kan genereres fra Java-kildetekst med liten innsats.

Andre kjernekomponenter

I tillegg til prosedyrer for internasjonalisering , hovedsakelig gjennom bruk av Unicode og ResourceBundle- klassen (se Java Platform, Standard Edition ), hører andre grunnleggende programmeringsgrensesnitt til Java-plattformen.

Valgfrie Java-pakker og tilhørende teknologi

I tillegg til kjernekomponentene til Java-plattformen, er det valgfrie komponenter som gir ekstra funksjonalitet.

Desktop-teknologi

Programmeringsgrensesnitt, som primært kreves for applikasjoner med et grafisk brukergrensesnitt, er oppsummert av Sun under begrepet Desktop Java Technology .

Distribusjon (automatisk distribusjon og installasjon av programvare)

Distribusjon er automatisk distribusjon av programvare til mange datamaskiner og installasjon på dem. Java kjøretidsmiljø JRE tilbyr to metoder for dette:

Komponenter

Med JavaBeans har Java sitt eget rammeverk for programvarekomponenter .

GUI

Standard klassebiblioteker for å lage grafiske brukergrensesnitt ( Grafisk brukergrensesnitt , GUI) ved hjelp av Java kalt Java Foundation Classes (JFC). I tillegg til den grunnleggende Abstract Window Toolkit (AWT) inneholder de andre klassebiblioteker:

  • Swing er et omfattende bibliotek med GUI-komponenter. Swing integrerer prosedyrer for bruk av funksjonshemmede, som er oppsummert under begrepet tilgjengelighet .
  • Java 2D er et klassebibliotek for å lage todimensjonal grafikk.
  • Prosedyre for internasjonalisering av de grafiske brukergrensesnittene.

Lydutgang

Det er et klassebibliotek kalt Java Sound for å sende ut lydfiler, for eksempel i MIDI- eller WAV- format .

Nettapplikasjoner

Nettapplikasjoner (serverbaserte applikasjoner hvis brukerinteraksjon foregår gjennom en nettleser) består vanligvis av JSPer ( JavaServer Pages ) og servlets . De nødvendige grensesnittene og klassene er lokalisert i Jakarta EE . Sammen med JavaBeans er det veldig enkelt å skrive applikasjoner som oppfyller MVC-mønsteret . Et stort antall rammer er basert på denne API-en. Siden 2004 har Java-plattformen med JavaServer Faces sin egen API for webapplikasjoner basert på MVC-mønsteret.

Standhaftighet

The Enterprise Edition gir den Enterprise Javabeans (EJBs) i for å permanent lagre ( "vedvarer") data. Det er Entity Beans (for å kartlegge tekniske objekter eller enheter), sesjonsbønner (for å kartlegge arbeidsflyten ) og Message Driven Beans (for asynkron kommunikasjon ) brukes. Den ganske tungvint og ikke objektorienterte tilnærmingen blir fullstendig revidert med den siste spesifikasjonen EJB 3.0. Det er mange rammer som tilbyr alternativer til utholdenhet ( f.eks. JDO eller Hibernate ).

Java-kjernebibliotekene tilbyr to ytterligere metoder som elementære utholdenhetsmekanismer:

  • Serialisering av objekttrær i binære filer via klasser i pakken " java.io" og
  • serialisering av JavaBeans i XML- filer via klasser i pakken " java.beans".

Valgfrie Java-pakker og relaterte teknologier

I tillegg til komponentene på Java-plattformen nevnt ovenfor, som alltid må være til stede, er det også en rekke valgfrie komponenter som kan installeres om nødvendig. Eksempler:

  • Den Java Media Framework (JMF) muliggjør produksjon av multimedia data, for eksempel videoer.
  • Java 3D- klassebiblioteket tilbyr klasser for visning av tredimensjonal, bevegelig og interaktiv grafikk.
  • Java Advanced Imaging inneholder klasser for å manipulere bildefiler.
  • Java Speech oppretter talespråk fra tekst.
  • Den Javahelp systemet kan brukes til å lage hjelpedokumentasjon for Java-programmer.

Individuelle bevis

  1. 64-biters Java for Windows . 20. april 2021 (åpnet 21. april 2021).
  2. https://docs.oracle.com/javase/9/tools/jlink.htm

litteratur

  • Bill Venners: Inside the Java Virtual Machine. 2. utgave. McGraw-Hill, New York 1999, ISBN 0-07-135093-4 (Standardverket; onlineversjon ; ufullstendig; utsolgt som bok)

weblenker