Javac — оптимизирующий компилятор языка java, включенный в состав многих Java Development Kit (JDK).
Компилятор принимает исходные коды, соответствующие спецификации Java language specification (JLS), и возвращает байт-код, соответствующий спецификации Java Virtual Machine Specification (JVMS).
Javac написан на Java. Может вызваться непосредственно из java-программ (JSR 199).
История
Javac входил в состав JDK с первой версии.
13 ноября 2006 г. корпорация Sun Microsystems сменила лицензию Java Virtual Machine (JVM) и Java Development Kit (JDK) на GPL v2.
GNU Classpath начиная с версии 0.95 поддерживает компилирование и запуск javac при помощи GIJ и GCJ. Также поддерживается компиляция самой библиотеки Classpath, её утилит и примеров.
Структура javac
Исполнение javac разбито на следующие фазы: