From Wikipedia, the free encyclopedia
Written inJava[1]
Operating systemCross-platform
LicenseGNU General Public License

javac (pronounced "java-see") is the primary Java compiler included in the Java Development Kit (JDK) from Oracle Corporation. Martin Odersky implemented the GJ compiler, and his implementation became the basis for javac.[2]

The compiler accepts source code conforming to the Java language specification (JLS) and produces Java bytecode conforming to the Java Virtual Machine Specification (JVMS).

javac is itself written in Java. The compiler can also be invoked programmatically.[3]


On 13 November 2006, Sun's HotSpot Java virtual machine (JVM) and Java Development Kit (JDK) were made available[4] under the GPL license.[5]

Since version 0.95, GNU Classpath, a free implementation of the Java Class Library, supports compiling and running javac using the Classpath runtimeGNU Interpreter for Java (GIJ) — and compiler — GNU Compiler for Java (GCJ) — and also allows one to compile the GNU Classpath class library, tools and examples with javac itself.[6]

See also[edit]


  1. ^ Lextrait, Vincent (January 2010). "The Programming Languages Beacon, v10.0". Archived from the original on 30 May 2012. Retrieved 14 March 2010.
  2. ^ "Preface to Java Generics".
  3. ^ Silverman, Shawn (30 August 2002). "Java Tip 131: Make a statement with javac!". JavaWorld. Retrieved 2020-07-14. [...]an application can access javac programmatically.
  4. ^ "Sun opens Java (feature story)". Sun Microsystems, Inc. 13 November 2006. Archived from the original on 5 January 2007.
  5. ^ Sun's OpenJDK Hotspot page
  6. ^ "This release supports compiling and running the GPL OpenJDK javac compiler[...]" "GNU Classpath 0.95 Announcement".

External links[edit]