web-dev-qa-db-ja.com

Intellijのantlr4プラグインを設定する方法IDEA

IntelliJ IDEA用のantlr4プラグインを構成する方法について、私はあちこちを調べました。しかし、何も見つかりません。プラグインしかインストールできませんでした。空のプロジェクトに手動で.g4ファイルを追加すると、右クリックメニューに[Generate ANTLR Recognizer]オプションが表示されます。以上です。とても有望なプラグインだと思いました。誰でもプラグインを続行する方法を教えて/指示できますか?

ありがとうございました

21
Morpheus

IntelliJ 14にANTLRプラグインをインストールし、それを機能させることができました。いくつかの小さなことが、予想よりも難しくしました。

  • プラグイン設定はANTLRファイル(.g4)ごとなので、生成する.g4ファイルを強調表示し、右クリックしてANTLRを構成します。それ以外の場合、ANTLR関連のコンテキストメニューはグレー表示されます。
  • 出力ディレクトリの設定はホームディレクトリに対して相対的であるため、出力ディレクトリを設定しても何も表示されない場合は、ホームディレクトリを調べるか、絶対パスを設定してください。出力ディレクトリをまったく設定しない場合、プロジェクトディレクトリに関連してJavaアーティファクトが生成されるようです。このようにして、動作させることができました。
  • aNTLR文法ファイルを右クリックし、コンテキストメニューから[ANTLR Recognizerの生成]を選択します。メインの[ビルド]メニューの[file.g4]オプションをコンパイルしても、何も起こりません。
  • 次に、出力ディレクトリ(デフォルトでは、プロジェクトルートのgenディレクトリ)を生成されたソースとしてマークします。 genを右クリックし、コンテキストメニューの下部にある[Mark Directory As]に、[Generated Sources Root]をサブメニューとして表示します。 ANTLR出力ディレクトリを生成されたソースとしてマークしない場合、IntelliJはレクサーとパーサーのJavaクラスファイルを見つけることができないため、コンパイルされません。 ANTLRレクサー/パーサーを参照する他のプログラムファイルの構文エラーはクリアされません。
  • プラグインは、プロジェクトでライブラリとして使用しているANTLRのバージョンではなく、含まれているANTLRのバージョンを使用しているようです。したがって、プラグインを使用すると、Javaソースコードを生成できます。プロジェクト内でコンパイルされません。

Java ANTLRプロジェクトの簡単な例を示します: https://stackoverflow.com/a/21552478/4239384

24
J. Simpson

GitHubプロジェクトページ IntelliJ Idea Plugin for ANTLR v4 を見たことはありますか?あなたは説明付きの多くのスクリーンショットを見つけるでしょう。

プレビューウィンドウなどのツールウィンドウも表示されます。

2
Terence Parr