JavaCCJava Compiler Compiler)是一個開源的語法分析器生成器和詞法分析器生成器。JavaCC根據輸入的文法生成由Java語言編寫的分析器。

JavaCC
開發者JavaCC開發團隊
當前版本7.0.3(2017年9月22日,​7年前​(2017-09-22[1]
原始碼庫github.com/javacc/javacc
程式語言Java
平台Java虛擬機
許可協議BSD
網站javacc.org

YACC類似,JavaCC根據由EBNF格式撰寫的形式文法生成語法分析器。不同的是,JavaCC生成的是自頂向下語法分析器,由於可以向前搜尋k個字符,所以可以用來分析LL(k)文法。同時,JavaCC生成詞法分析器的方式和Lex也很像。[2]

另外,JavaCC還提供JJTree等輔助工具幫助使用者構建語法樹

歷史

在1996年,Sun Microsystems推出了一個名叫「Jack」的語法解析器生成器。後來,負責「Jack」的開發者創辦了自己的公司——Metamata,並將「Jack」改名為「JavaCC」。Metamata最後成為了WebGain的一部分,在WebGain關閉後,JavaCC才移動到了現在的主頁。

使用

使用JavaCC構建的軟件:

另見

外部連結

JavaCC FAQ頁面存檔備份,存於互聯網檔案館

參考

  1. ^ JavaCC源代码库Release页面. [2018-07-11]. (原始內容存檔於2020-10-14). 
  2. ^ JavaCC网站Feature页面. [2018-07-11]. (原始內容存檔於2018-07-11). 
  3. ^ Lucene 4.0.0 queryparser类 API. [2018-07-11]. (原始內容存檔於2020-01-27).