サーチ…


インストールとセットアップ

EclipseにANTLRをインストールする方法

(IndigoとANTLR IDE 2.1.2で最後にテストされた)

  1. Eclipseをインストールします。
  2. ANTLR v2を含むANTLR完全バイナリjarをダウンロードします。 tempディレクトリに展開します。 antlr-nnフォルダを適切な永続的な場所(たとえば、Eclipseがインストールされているのと同じフォルダ)にコピーします。
  3. EclipseにANTLR IDE更新サイトを追加します。
    • Eclipseで、「ヘルプ」をクリックし、「新規ソフトウェアのインストール」を選択します。
    • 追加...ボタンをクリックします。
    • リポジトリの追加ウィンドウで、場所タイプにhttp://antlrv3ide.sourceforge.net/updatesと入力し、名前にANTLR IDEと入力して「OK」をクリックして、「使用可能なソフトウェア」ウィンドウに戻ります。
    • ANTLR IDE vn.nnのチェックボックスをオンにして、インストールされるまでをスルーします。 Eclipseが再起動する可能性があります。
  4. ANTLR IDEを構成します。
    • Eclipseのメインウィンドウで、[ウィンドウ]、[設定]の順にクリックします。
    • 左側のペインでANTLRを展開し、Builderを選択します。
    • 右側のウィンドウで、[追加...]ボタンをクリックします。
    • 「ANTLRパッケージの追加」ウィンドウで「ディレクトリー...」をクリックし、antlr-nnフォルダーの場所に移動して「OK」をクリックします。
    • 「OK」をクリックして「ANTLRパッケージの追加」ウィンドウを閉じます。
    • 左側のペインで[Code Generator]を選択し、右側のペインで[Project relative folder]をクリックします。フォルダ名を入力します。例:antlr-javaまたはantlr-generated。
    • 他の設定パラメータは選択しますが、BuildingウィンドウのGeneralの下にある-nfaまたは-dfaをチェックしないでください。これをチェックするとANTLRエラーが発生し、javaファイルが出力フォルダに生成されなくなります。
    • [OK]をクリックして[設定]ウィンドウを閉じます。
  5. 新しいJavaプロジェクトを作成し、ANTLRサポートを有効にします。
    • Eclipseのメインウィンドウから、「ファイル」、「新規」、「Javaプロジェクト」を選択します。 [次へ]をクリックし、プロジェクト名を入力して[完了]をクリックします。
    • プロジェクトのANTLRサポートを有効にするには、Package Explorerウィンドウ(左ペイン)で作成したプロジェクトを右クリックし、Configure、ANTLRプロジェクトに変換を選択します。
    • プロジェクトにANTLR完全jarファイルを追加します:プロジェクトを右クリックし、「Properties」、「Java Build Path」、「Add External JARs ...」を選択し、ANTLR jarファイルをブラウズして選択して「OK」をクリックします。 [OK]をクリックして、プロジェクトのプロパティウィンドウを閉じます。
  6. ANTLR文法を作成します。
    • 新しいANTLR文法を作成します。プロジェクトのsrcフォルダを右クリックし、ファイル、新規、その他、ANTLRを展開して複合文法を選択します。 [次へ]をクリックし、文法名を入力し、言語オプションを選択して、完了をクリックします。
    • 選択されたオプションとブランクルールで ".g"ファイルが作成されます。 language = Java、@header、@lexer :: header、および@membersの各ステートメントを最上部に追加します(例を参照)。自動補完は、これらを追加する最も簡単な方法です(CTRL-スペースを押すと自動補完リストが表示されます)。
  7. 文法を保存します。
    • 保存すると、生成された文法用のJavaコードを含むフォルダがプロジェクトエクスプローラに表示されます。そうでない場合は、BuildingウィンドウのGeneralのANTLR Preferencesで-nfaまたは-dfaオプションがチェックされていないことを確認します(ステップ4g)。 [必要な場合は、CLASSPATH環境変数が、Eclipseのインストール(32または64ビット)に一致するJava7とWindowsパス環境変数がJava7 SDKを持っているかどうかを確認します。
    • 「タイプに解決できない」Javaエラーを回避するには、生成されたJavaコードを含むフォルダーを右クリックし、「パスの構築」、「ソースフォルダーとしての使用」をクリックします。

結合されたグラマー

grammar test; //must match filename.g

options {
    language = Java;
}

@header { //parser
    package pkgName; //optional
    import java.<whatever you need>.*;
}

@members { //parser
    // java code here
}

@lexer::header { //lexer
    package pkgName; //optional
    import java.<whatever you need>.*;
}

@lexer::members {
    // java code here
}
/*------------------------------------------------------------------
 * PARSER RULES (convention is all lowercase)
 *------------------------------------------------------------------*/
parserule: LEXRULE;

/*------------------------------------------------------------------
 * LEXER RULES (convention is all uppercase)
 *------------------------------------------------------------------*/
LEXRULE: 'a'..'z';


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow