JDK
Java Development Kit (JDK) je produktem Oracle Corporation, který obsahuje soubor základních nástrojů pro vývoj aplikací pro platformu Java. Někdy bývá označován jako Java SDK, od verze 1.2 do verze 1.4.x byl označován jako J2SE SDK nebo Java 2 SDK. 17. listopadu 2006 se firma Sun rozhodla uvolnit ho pod GNU General Public License (GPL) a 8. května 2007 uvolnila pod GNU/GPL v2, což z něj vytvořilo freeware. Sun tak nově přesunul zdrojový kód Javy pod opensource projekt OpenJDK.
Vývojář | Oracle Corporation |
---|---|
Aktuální verze | 17.0.2 (18. ledna 2022) |
Operační systém | multiplatformní software |
Vyvíjeno v | Java a C |
Typ softwaru | software development kit |
Web | www |
Některá data mohou pocházet z datové položky. |
Součásti JDK
- Java Runtime Environment pro spouštění aplikací i vývojových nástrojů, přičemž toto prostředí obsahuje:
- virtuální stroj (spouštěný příkazem
java
); - sadu základních knihoven (Java Core API) oproti standardnímu JRE rozšířenou o některé knihovny;
- virtuální stroj (spouštěný příkazem
java
– zavaděč pro aplikace Java. Tento nástroj interpretuje class soubory které jsou generovány javac překladačem. Nyní je jeden zavaděč používán jak pro vývoj tak pro nasazení aplikací. Starší verze, JRE, už se nepoužívá a byla nahrazena tímto novým java zavaděčem.javac
– překladač zdrojového kódu v jazyce Java do bajtkódu.jdb
– debugger pro ladění programů.javadoc
– slouží pro generování programové dokumentace ze zdrojových kódů a speciálně formátovaných komentářůjar
– vytváří jar archivy, které se používají pro distribuci programů i knihoven pro platformu Javajavah
– nástroj pro generování hlavičkových souborů pro JNInative2ascii
– slouží pro konverzi zdrojového kódu v určitém kódování do kódování ASCIIjavap
– soubor třídjavaws
– Java Web Start spouštěč pro JNLP aplikacejconsole
– konzole pro monitoring a management Javajhat
– nástroj pro analýzu hald anglicky Java Heap Analysis Tool (experimentální)jinfo
– utilita pro získávání konfiguračních informací z běžících Java procesů a pádů (experimentální)jmap
– tato utilita vytváří paměťové mapy Java a může vytisknout paměťové mapy sdílených objektů nebo detaily paměti daných procesů nebo pádů jádra (experimentální)jps
– Java Virtual Machine status procesů, dělá seznam HotSpotů Java Virtual Machines v cílovém systému (experimentální)jrunscript
– příkazový řádek Java skript shellujstack
– utilita, která tiskne trasování zásobníku vláken Java (experimentální)jstat
– Java Virtual Machine nástroj monitorování statistik (experimentální)jstatd
– jstat démon (experimentální)policytool
– nástroj pro vytváření a management pravidel, a to takových pro Java runtime, která specifikují povolení pro zdrojové kódy z různých zdrojůVisualVM
– vizuální nástroj, integrující několik rozhraní příkazové řádky JDK nástrojů a funkce pro profilování výkonu a pamětiwsimport
– generuje přenosné JAX-WS artefakty pro vyvolání webové službyxjc
– část Java API, která akceptuje XML schémata a generuje třídy jazyka Java
Experimentální nástroje nemusí být všechny k dispozici v budoucích verzích JDK.
JDK také přichází s kompletním Java Runtime Environment, nazývané také privátní běhové rozhraní, protože je odděleno od "běžného" JRE a má speciální obsah. Je tvořen z Java Virtual Machine a všech třídních knihoven v produkčním prostředí, ale obsahuje také knihovny určené pouze pro vývojáře, jako jsou internacionalizační knihovny a IDL knihovny popisující rozhraní.
Kopie JDK také zahrnují širokou škálu programů, demonstrujících použití téměř všech portů Java API.
Rozdíly mezi JDK a SDK
JDK představuje rozšířenou verzi software development kit (SDK). V doprovodných popisech pro Java SE, EE, ME, firma Sun uvedla, že v této terminologii představuje JDK podmnožinu SDK, která je odpovědná za psaní/vývoj a provoz Java programů. Zbytek SDK představuje extra software, jako jsou aplikační servery, debuggery a dokumentace.
Další JDK
K dispozici jsou také jiná JDK pro různé platformy, některé z nich vycházejí ze zdrojových kódů Sun JDK, jiné nikoliv. Každé z nich se drží základních specifikací jazyka Java, ale jsou zde rozdíly, jako například v kompilačních strategiích a optimalizačních technikách.
Patří k nim:
- GNU's GCJ (The GNU Compiler for Java)
- IBM J9 JDK pro AIX, Linux, Windows, MVS, OS/400, Pocket PC, z/OS
- Oracle Corporation JRockit JDK pro Windows, Linux a Solaris
- Blackdown Java – Port Sun JDK pro Linux
- Apple Mac OS Runtime pro Java JVM/JDK pro Classic Mac OS
- Apache Harmony
- RedHat IcedTea zaměňuje proprietární cestu ke třídám v OpenJDK
- Aicas JamaicaVM
Související články
Reference
V tomto článku byl použit překlad textu z článku Java Development Kit na anglické Wikipedii.