Головна програма, яка має таку функціональність — компілятор мови Java javac,[1] який входить до JDK. Javac використовує написаний вручну LALR парсер.
Оскільки написаний вручну код складніший для розуміння та змін ніж згенерований із граматики, існує проект створення експериментальної версії javac, яка використовує генератор парсерів Antlr.[2]
NetBeans використовує код javac, модифікований для зручнішого використання в IDE.[3]. У версії NetBeans 6.0 інфраструктура, яка надає доступ до Java коду була повністю переписана, старий код (Java JMI/MDR) було прибрано, написано новий, так званий Retouche APIs.[4]
EclipseJDT використовує парсер згенерований за допомогою генератора парсерів Jikes.[5] JDT надає об'єктну модель документу (Document Object Model, DOM), аналогічну до добре відомого XMLDOM — реалізацію абстрактного синтаксичного дерева — Abstract Syntax Tree (AST).[6][7][8][9] Eclipse має додаток, що відображає AST для Java коду — AST View.[10]. Парсер Eclipse може використовуватися для аналізу та перетворення коду на Java,[11] у тому числі незалежно від середовища Eclipse.[12] Його використано для аналізу змін у початковому коді у проекті ChangeDistiller,[13][14][15][16] а також як фронтенд для GCJ.[17]
Існує проект javaparser, який використовує генератор парсерів javacc.[18]
↑Jim D'Anjou, Scott Fairbrother, Dan Kehn, John Kellerman, Pat McCarthy (2004). The Java developer's guide to Eclipse (вид. 2-ге). Boston: Addison-Wesley. с. 1136. ISBN0321305027., розділи Analyzing Java source code, Manipulating Java source code
Bill Campbell, Swami Iyer, Bahar Akbal-Delibaș (2012). Introduction to compiler construction in a Java world. Boca Raton, FL: CRC Press. с. 381. ISBN1439860882.