The Java programming language is, according to the TIOBE programming community index, one of the top choices of software developers, battling for supremacy with the C and C-based languages. Its features are utilized on most of the electronic equipment worldwide, from PCs, mobile terminals or media players to more sophisticated medical devices.
The Java platform provides one environment to develop software for multiple operating systems such as Microsoft Windows, Mac OS X or Linux distributions. While the Java Runtime Environment (JRE) allows you to execute Java applications, components and applets, the Java Development Kit (JDK) delivers a comprehensive set of tools for programmers to build, run, debug and even document the Java code.
You are also given access to the Java Virtual Machine (JVM) component of JRE alongside class libraries and support files in order to implement your applications. JDK comes packing demonstrative source codes and particular APIs using Java Foundation Classes including Swing as well as the Java Platform Debugger Architecture. It also sports learning material for Java programming language beginners in the form of various Java core API source files.
Being the most commonly used Java Software Development Kit (SDK), JDK's firsthand components comprise the loader for Java application (simply called `java`) - the interpreter of class files created by the compiler (javac), the compiler itself that takes the source code from its raw form to Java bytecode and the `appletviewer` for executing and debugging java applets.
In addition to these tools, the JDK also brings the annotation-processing tool, the `extcheck` for JAR-file conflict detection, the `idlj` IDL to Java compiler, the `javadoc` documentation generator that utilizes source code comments or the `jar` archiver that sums up the related class libraries within a single JAR file. Other tools include a disassembler, a launcher, a debugger, a Java command-line script shell or a policy creation and management utility.
Bottomline is that Java Development Kit ensembles a powerful set of tools and everything that comes to aid programmers no matter their knowledge-level in fulfilling their Java applications. Nevertheless, JDK is the bread and butter of any Java developer out there.
What's New in This Release:
· F# on PATH breaks Cygwin tools (mkdir, echo, mktemp ...)
· new hotspot build - hs25-b40
· Kitchensink crashed with SIGSEGV in BaselineReporter::diff_callsites
· SA: provide mechanism for using an alternative SA debugger back-end.
· Win32 crash with CDS enabled and small heap size
· Check of capacity paramenters in JNI_PushLocalFrame is wrong
· race condition in VMError::report_and_die()
· Duplicate zombie check in safe_for_sender
· Minor issues in event tracing metadata
· [dtrace] signatures returned by Java 7 jstack() are corrupted on Solaris
· NPG: With -XX:+UseCompressedKlassPointers OOME due to exhausted metadata space could occur when metaspace is almost empty
· G1 tests fail with native OOME on Solaris x86 after HeapBaseMinAddress has been increased
· G1: Non Java threads should lock the shared SATB queue lock without safepoint checks.
· G1: assert(_card_counts[card_num]