JDK (Java development kit)

Das Java Development Kit (JDK) der Firma Sun bündelt eine Reihe von kommandozeilenorientierten Tools, die zur Erstellung, Kompilierung und zur Ausführung von Programmen in der Programmiersprache Java verwendet werden. Die JDK enthält zudem umfangreiche Bibliotheken, Quellcodes sowie Beispielprogramme, die für die Entwicklung eigener Software eine hilfreiche Basis zur Verfügung stellen. In der für verschiedene Einsatzgebiete zur Verfügung stehenden JDK ist keine grafische Entwicklungsumgebung enthalten. Im Januar 2010 steht die JDK in der Version 6, Update 18 unter der GNU General Public License (GPL) zur Verfügung. Gleichfalls sind unter dem u.g. Link die ausführlichen API- und Tool-Dokumentationen verfügbar.


Die JDK beinhaltet keine eigene grafische Entwicklungsumgebung. Doch haben verschiedene Hersteller seit der Entstehung von Java grafische Entwicklungsumgebungen für Java entwickelt. Hier sei beispielsweise auf die komfortablen Entwicklungsumgebungen Eclipse und NetBeans (ebenfalls ein kostenloses SUN-Produkt) verwiesen.

In Abhängigkeit vom jeweiligen Verwendungszweck liegt die JDK für verschiedene Einsatzgebiete vor.

Standard Edition (J2SE). Die Java 2 Standard Edition wird zur Entwicklung und Ausführung von Java-Programmen für Standard-Anwendungen eingesetzt.

Enterprise Edition (J2EE). Mit der Java 2 Enterprise Edition werden zusätzliche Bibliotheken für verteilte Anwendungen und Web-Services angeboten.

Micro Edition (Java ME). Die Java Micro Edition ist für Anwendungen auf kompakten, tragbaren Computern wie PDAs und Organizer sowie Smartphones gedacht. Ursprünglich war diese Edition mit dem Hintergrund der geringen Nutzung von Speicher und reduzierter Rechenleistung realisiert worden. Mittlerweile haben jedoch auch moderne Geräte erheblich mehr Rechen-Power und höheren Speicher, so dass auch eine normale Java Virtual Machine (JVM) ablaufen kann.

Im Folgenden sind zunächst die wichtigsten Elemente der JDK aufgeführt.

Java Compiler. Der Java Compiler javac dient der Übersetzung des Java-Programms. Dabei wird ein plattformunabhängiger Zwischencode, der sogenannte Bytecode, erzeugt. Dieser wird in einer Datei, die denselben Namen wie die Quelltextdatei - jedoch mit der Datennamenerweiterung *. class - besitzt, gespeichert. Dieser Bytecode ist plattformunabhängig, weil er sich für die verschiedenen Rechnerplattformen beispielsweise Windows, Solaris oder Linux nicht unterscheidet. Allerdings ist dieser Zwischencode auch nicht direkt auf dem Zielsystem ausführbar.

Java Interpreter. Der Java Interpreter java realisiert die Ausführung des vom Compiler erzeugten Bytecodes und ist somit plattformabhängig. Es existieren somit für viele Plattformen entsprechende Interpreter. Dabei wird ein Java-Interpreter auch als Java Virtual Machine (JVM) bezeichnet.

Java Archiver. Das Dienstprogramm jar (Java-Archiv) ist über die Kommandozeile verfügbar und realisiert verschiedene Optionen, um Archive zu erzeugen, diese zu extrahieren und anzuschauen. Allerdings gibt es auch mit den in der JDK mitgelieferten Bibliotheken ein Application Programming Interface (API) mit der alles so programmiert werden kann, wie es auch das Dienstprogramm selbst leistet. Der Vorteil der Bündelung in einem Archiv ist der, dass Entwickler ihre Klassen- und Quellcode-Dateien komfortabel in einer einzigen ausführbaren Datei bündeln können. Ein weiterer Gesichtspunkt ist, dass die Betriebssysteme beispielsweise Windows und Mac OS X standardmäßig mit der Dateiendung .jar das Java Runtime Environment (JRE) verbunden haben, so dass ein Doppelklick auf einer Jar-Datei das Programm gleich startet.

Java Dokumentation. Das Java Tool javadoc erzeugt anhand spezieller Dokumentationskommentare im Java-Quellcode eine externe HTML-Datei für jede öffentliche Klasse. Zudem werden weitere Informationen wie eine Übersicht aller Klassen, Ausnahmen, Methoden und Schnittstellen in einer separaten Datei generiert. Dabei beachtet javadoc streng den in der objektorientierten Welt wichtigen Gesichtspunkt der Sichtbarkeit, und nimmt standardmäßig nur öffentliche Dinge in die Dokumentation auf.

Monitoringprogramme. Darunter sind seit der Versionen Java 5 und Java 6 Programme zusammengefasst, die gestartete Java-Programme auflisten und gezielte Anfragen an diese zur Laufzeit ermöglichen. Im Einzelnen sind das die Tools:

  • Java Virtual Machine Process Status Tool (jps) liefert alle laufenden Java-Programme,
  • Java Virtual Machine Statistics Monitoring Tool (jstat) ermöglicht Performance-Statistiken,
  • Java Memory Map (jmap) listet alle Exemplare von Java-Objekten und den durch diese belegten Speicher auf und
  • mit Hilfe des Stack-Trace-Tools (jstack) können laufende Threads zusammen mit Informationen über den durch Monitore erzwungenen Wartezustand angezeigt werden.
Zudem wird eine umfangreiche Sammlung von Bibliotheken, Komponenten und Beispielprogrammen bei einem Download der JDK zur Verfügung gestellt.

http://java.sun.com

http://eclipse.org

Informationen zum Artikel
Deutsch:
Englisch: Java development kit - JDK
Veröffentlicht: 28.10.2013
Wörter: 685
Tags: #Java
Links: API (application programming interface), Archivierung, Ausnahme, BS (Betriebssystem), Bibliothek