ANTLR 4 IDE をEclipse Luna(4.4)にインストールしようとしています。マーケットプレイスからインストールしましたが、ANTLR 4レクサー/パーサーを含むプロジェクトを作成する方法がわかりません。
新しいプロジェクトを作成しようとしても、ANTLR 4のオプションが表示されません。g4ファイルを作成しようとすると、エディターで開きましたが、保存しても何も起こりません。
私はインターネット全体を見回して、一緒に石畳を作ったいくつかのリソースを見つけ、試行錯誤による解決策を見つけました。以下は、EclipseでANTLR 4 IDEセットアップを取得するためにいくつかのマシンで使用したガイドです。私はそれをここで共有し、Googleが何時間も検索する手間を(できれば)救うべきだと考えました
前提条件
セットアップ
Help > Install New Software...
_に移動しますhttp://download.Eclipse.org/modeling/tmf/xtext/updates/composite/releases/
_テキストボックスに_Work With
_を入力しますXtext
ノードを展開し、_Xtext Complete SDK
_を確認します(バージョンが2.7.3xであることを確認します)Next
をクリックし、EULAに同意して、[完了]をクリックしますHelp > Install New Software...
_に移動しますhttp://download.Eclipse.org/releases/luna
_テキストボックスに_Work With
_を入力しますFacet
と入力しますEclipse Faceted Project Framework
_および_Eclipse Faceted Project Framework JDT Enablement
_を選択しますNext
をクリックし、EULAに同意して、[完了]をクリックしますHelp > Eclipse Marketplace...
_に移動しますantlr
を検索ANTLR 4 IDE
_を選択します(ANTLR IDEではなくANTLR 4 IDEであることを確認してください)ANTRL 4プロジェクトの作成
私はこの情報のほとんどを見つけました ここ 、残りはエラーの読み取りと推測でした
File > New Project > Project
_に移動しますGeneral Tab
_を展開して_ANTLR 4 Project
_を選択します(これが表示されない場合は、セットアップのステップ4を参照してください)Next
をクリックし、プロジェクトに名前を付けてFinish
をクリックしますProperties
をクリックしますProject Facets
_に移動し、_Convert to faceted form...
_をクリックします(これが表示されない場合は、セットアップのステップ3を参照してください)Java
プロジェクトファセットを確認し、Apply
をクリックします(これが表示されない場合は、セットアップのステップ3を参照してください)OK
をクリックして、ソリューションを再構築し、プロパティを再度開きますJava Build Path
_に移動し、[Source
]タブをクリックしますAdd Folder...
_をクリックして_Project > target > generated-sources > antlr4
_を確認し、OK
をクリックしますLibraries
タブをクリックしますAdd External JARs...
_、_antlr-4.x-complete.jar
_のコピーを見つけ、Open
をクリックしますANTLR 4 > Tool
_に移動し、ポップアップが表示されたらApply
をクリックしますEnable project specific settings
_Add
をクリックし、_antlr-4.x-complete.jar
_のコピーを見つけて、Open
をクリックします。4.x
_Apply
をクリックし、Yes
をクリックして再構築し、OK
をクリックしてプロパティを終了しますテスト
次のコードで新しいクラスを作成し、実行してみてください。コンソールで_Hello there
_と書き、 Ctrl + z EOFを入力ストリームに送信する
_import org.antlr.v4.runtime.*;
import org.antlr.v4.runtime.tree.*;
public class HelloRunner
{
public static void main( String[] args) throws Exception
{
ANTLRInputStream input = new ANTLRInputStream( System.in);
HelloLexer lexer = new HelloLexer(input);
CommonTokenStream tokens = new CommonTokenStream(lexer);
HelloParser parser = new HelloParser(tokens);
ParseTree tree = parser.r(); // begin parsing at rule 'r'
System.out.println(tree.toStringTree(parser)); // print LISP-style tree
}
}
_
注意事項
ANTLR 4 > Tool
_にアクセスしようとしたときにエラーが発生した場合は、Xtextバージョンを確認してください。2.8.0を使用すると、ツールウィンドウでエラーが発生します。_ANTLR 4 > Tool > Distributions
_に追加したANTLRのバージョンが表示されなくなった場合は、問題ないようです
ANTLR Tool v4.5 (C:\JavaLib\antlr-4.5-complete.jar) Hello.g4 -o C:\Users\username\workspace\project\target\generated-sources\antlr4 -listener -no-visitor -encoding UTF-8