內(nèi)蒙古java團(tuán)隊(duì)

          j2se,j2ee開發(fā)組
          posts - 139, comments - 212, trackbacks - 0, articles - 65
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          下載antlr的二進(jìn)制包

          Posted on 2006-12-30 10:00 帥子 閱讀(519) 評論(0)  編輯  收藏 所屬分類: j2se技術(shù)專區(qū)

          0 antlr的運(yùn)行需要jdk的支持,如果您沒有安裝,請先下載安裝
          http://java.sun.com/j2se/1.5.0/download.jsp

          1 下載antlr的二進(jìn)制包
          http://www.antlr.org/download/antlr-2.7.6.tar.gz
          解壓到一個(gè)文件夾,比如f:\antlr-2.7.6,在該目錄下面,可以看到antlr.jar。這個(gè)正是antlr的工具包。

          2 設(shè)置環(huán)境變量
          我的電腦-> 屬性->高級-> 環(huán)境變量, 確保PATH里面含有jdk的bin路徑,如”C:\Program Files\Java\j2sdk1.5.0\bin;”,? 否則會提示找不到”java”命令

          環(huán)境變量CLASSPATH指明了java執(zhí)行時(shí),搜索class庫文件的路徑。如果CLASSPATH變量不存在,就需要自己新建一下了。在變量值里面添加? .;F:\antlr-2.7.6\antlr.jar
          各個(gè)路徑以’;'分割,?第一個(gè)’.'表示總是先在當(dāng)前目錄尋找,第二個(gè)指明了antlr包的所在”F:\antlr-2.7.6\antlr.jar”。

          3 這樣就可以工作了。寫一個(gè)簡單的語法描述文件test.g, 運(yùn)行命令
          java antlr.Tool test.g

          antlr就會為你自動生成lexer,parser,你只需要寫一個(gè)test.java調(diào)用這些分析類–一個(gè)簡單的分析器就完成了。

          編譯所有
          java *.java

          運(yùn)行分析器類 test
          java test

          參考:
          ANTLR Ashley J.S Mills Copyright ? 2005 The University Of Birmingham
          非常詳細(xì)的介紹了如何使用antlr構(gòu)造一個(gè)表達(dá)式分析器,計(jì)算表達(dá)式的值;還有一個(gè) CSV 到XHTML的格式轉(zhuǎn)換器(個(gè)人認(rèn)為使用perl+正則表達(dá)式是不是更好?), csv是指使用逗號分割數(shù)據(jù)項(xiàng)的文本文件。

          An ANTLR Tutorial Scott Stanchfield
          詳細(xì)的介紹如何使用antlr一步一步構(gòu)造一個(gè)完整的編譯器 XL,可惜的是目前教程只完成了分析器這一塊Build a Recognizer,對于symbol table, type checking,Build an AST,Write a Tree Walker to generate code,Write an Interpreter, Test the output code則沒有涉及,期待中。

          主站蜘蛛池模板: 土默特左旗| 龙口市| 顺义区| 盐城市| 东丽区| 柳州市| 沙田区| 安远县| 浦县| 富川| 山东| 安新县| 东乌珠穆沁旗| 那曲县| 东港市| 唐山市| 安平县| 鸡泽县| 唐海县| 南投市| 玛多县| 南充市| 六安市| 定南县| 治多县| 龙口市| 和田市| 柘荣县| 房产| 铅山县| 金阳县| 阜宁县| 应城市| 罗城| 安义县| 嘉鱼县| 云浮市| 高雄市| 徐州市| 吉水县| 天全县|