代码之家  ›  专栏  ›  技术社区  ›  Michael Burbidge

如何修复JetBrains IDE中的ANTLR插件问题?

  •  0
  • Michael Burbidge  · 技术社区  · 1 年前

    在使用JetBrains/Iidea的ANTLR插件生成ANTLR识别器后,我收到了以下消息。

    在分析树窗格中,显示以下内容:

    语法分析器和/或词法分析器语法的问题阻碍了预览;请参阅ANTLR工具输出窗格。

    输出窗格现在显示问题的错误消息。它只是显示:

    2023-12-14 22:01:41: antlr4 -o /Users/mburbidg/Development/gql/grammar/gen -listener -visitor -lib /Users/mburbidg/Development/gql/grammar /Users/mburbidg/Development/gql/grammar/GQLParser.g4 /Users/mburbidg/Development/gql/grammar/GQLLexer.g4

    然而,我发现生成的命令很有趣,因为它默认在gen文件夹中生成,但是 -lib 指向顶级文件夹。所以我想知道令牌文件是否丢失了。

    我有另一个解析器和lexer项目,工作得很好。

    如有任何帮助,我们将不胜感激。

    0 回复  |  直到 1 年前
        1
  •  0
  •   Bart Kiers    1 年前

    你的语法没有错:这一定是插件的错误。我认为语法被分成两个文件,再加上它相当大,这会造成问题。你可以制造一个问题 here .

    如果你把它变成 combined grammar 1. ,插件 工作

    1. 命名文件 GQL.g4 并将所有lexer和解析器规则复制到此文件中,如下所示: https://gist.githubusercontent.com/bkiers/18231f04322bf2e2f8c9a44ab45cd909/raw/5a3056421c05b799209e18ba61a39aa3805dbb49/GQL.g4